heap_init
00d9d840 mov       eax, dword ptr [esp + 4]
00d9d844 push      ebx
00d9d845 push      ebp
00d9d846 push      esi
00d9d847 mov       esi, ecx
00d9d849 mov       dword ptr [esi + 0x68], eax
00d9d84c xor       ebx, ebx
00d9d84e lea       eax, [edx + 3]
00d9d851 mov       ecx, eax
00d9d853 and       ecx, 3
00d9d856 sub       eax, ecx
00d9d858 mov       dword ptr [esi + 0x70], eax
00d9d85b lea       eax, [esi + 0x54]
00d9d85e push      edi
00d9d85f mov       byte ptr [esi + 0x7c], bl
00d9d862 mov       byte ptr [esi + 0x78], bl
00d9d865 mov       word ptr [esi + 0x7d], bx
00d9d869 mov       dword ptr [esi + 0x1d8], ebx
00d9d86f mov       dword ptr [esi + 0x1d0], ebx
00d9d875 mov       dword ptr [esi + 0x74], ebx
00d9d878 mov       dword ptr [esi + 0x1d4], 1
00d9d882 mov       dword ptr [esi + 0x6c], 0x400000
00d9d889 lea       ecx, [eax + 0x14]
00d9d88c lea       esp, [esp]
00d9d890 mov       dword ptr [eax], ebx
00d9d892 add       eax, 4
00d9d895 cmp       eax, ecx
00d9d897 jb        0xd9d890
00d9d899 mov       edi, dword ptr [esp + 0x1c]
00d9d89d mov       edx, dword ptr [esp + 0x18]
00d9d8a1 mov       dword ptr [esi + 0x2c], ebx
00d9d8a4 mov       dword ptr [esi + 0x30], ebx
00d9d8a7 mov       dword ptr [esi + 0x34], edx
00d9d8aa mov       dword ptr [esi + 0x38], ebx
00d9d8ad mov       dword ptr [esi + 0x3c], ebx
00d9d8b0 mov       dword ptr [esi + 0x40], ebx
00d9d8b3 mov       dword ptr [esi + 0x44], ebx
00d9d8b6 cmp       edi, ebx
00d9d8b8 jne       0xd9d8be
00d9d8ba xor       eax, eax
00d9d8bc jmp       0xd9d8c5
00d9d8be mov       ecx, edi
00d9d8c0 call      0xd92f00
00d9d8c5 push      0x80
00d9d8ca xor       dl, dl
00d9d8cc lea       ecx, [esi + 0xa0]
00d9d8d2 mov       dword ptr [esi + 0x48], eax
00d9d8d5 mov       dword ptr [esi + 0x4c], edi
00d9d8d8 mov       dword ptr [esi + 0x50], ebx
00d9d8db call      0xd95820
00d9d8e0 lea       ecx, [esi + 0x120]
00d9d8e6 push      0x80
00d9d8eb xor       dl, dl
00d9d8ed mov       dword ptr [esp + 0x18], ecx
00d9d8f1 call      0xd95820
00d9d8f6 lea       ecx, [esi + 0x1a0]
00d9d8fc mov       eax, ecx
00d9d8fe lea       edx, [eax + 0x30]
00d9d901 mov       dword ptr [eax], ebx
00d9d903 add       eax, 4
00d9d906 cmp       eax, edx
00d9d908 jb        0xd9d901
00d9d90a lea       edx, [esi + 0x80]
00d9d910 mov       eax, edx
00d9d912 lea       ebp, [eax + 0x20]
00d9d915 mov       dword ptr [eax], ebx
00d9d917 add       eax, 4
00d9d91a cmp       eax, ebp
00d9d91c jb        0xd9d915
00d9d91e lea       eax, [esi + 0x1ac]
00d9d924 mov       dword ptr [ecx], ecx
00d9d926 mov       dword ptr [esi + 0x1a4], ecx
00d9d92c mov       dword ptr [esi + 0x1bc], ecx
00d9d932 mov       dword ptr [esi + 0x88], edx
00d9d938 mov       dword ptr [esi + 0x8c], edx
00d9d93e push      0x80
00d9d943 xor       dl, dl
00d9d945 lea       ecx, [esi + 0xa0]
00d9d94b mov       dword ptr [eax], eax
00d9d94d mov       dword ptr [esi + 0x1b0], eax
00d9d953 mov       dword ptr [esi + 0x1a8], esi
00d9d959 call      0xd95820
00d9d95e mov       ecx, dword ptr [esp + 0x14]
00d9d962 push      0x80
00d9d967 xor       dl, dl
00d9d969 call      0xd95820
00d9d96e pop       edi
00d9d96f pop       esi
00d9d970 pop       ebp
00d9d971 pop       ebx
00d9d972 ret       0xc
00d9d975 int3      
00d9d976 int3      
00d9d977 int3      
00d9d978 int3      
00d9d979 int3      
00d9d97a int3      
00d9d97b int3      
00d9d97c int3      
00d9d97d int3      
00d9d97e int3      
00d9d97f int3      
heap_clear
00d9d980 push      ebx
00d9d981 push      esi
00d9d982 mov       esi, ecx
00d9d984 xor       ebx, ebx
00d9d986 cmp       dword ptr [esi + 0x1d4], ebx
00d9d98c je        0xd9da54
00d9d992 mov       eax, dword ptr [esi + 0x88]
00d9d998 push      edi
00d9d999 lea       edi, [esi + 0x80]
00d9d99f cmp       eax, edi
00d9d9a1 je        0xd9d9c9
00d9d9a3 push      ebp
00d9d9a4 mov       ecx, dword ptr [esi + 0x70]
00d9d9a7 mov       ebp, dword ptr [esi]
00d9d9a9 push      0x811
00d9d9ae lea       edx, [ecx + eax + 0x20]
00d9d9b2 mov       eax, dword ptr [ebp + 0xc]
00d9d9b5 push      0xf76b1202
00d9d9ba mov       ecx, esi
00d9d9bc call      eax
00d9d9be mov       eax, dword ptr [esi + 0x88]
00d9d9c4 cmp       eax, edi
00d9d9c6 jne       0xd9d9a4
00d9d9c8 pop       ebp
00d9d9c9 mov       eax, edi
00d9d9cb lea       ecx, [eax + 0x20]
00d9d9ce mov       edi, edi
00d9d9d0 mov       dword ptr [eax], ebx
00d9d9d2 add       eax, 4
00d9d9d5 cmp       eax, ecx
00d9d9d7 jb        0xd9d9d0
00d9d9d9 push      0x80
00d9d9de lea       ecx, [esi + 0xa0]
00d9d9e4 xor       dl, dl
00d9d9e6 call      0xd95820
00d9d9eb push      0x80
00d9d9f0 lea       ecx, [esi + 0x120]
00d9d9f6 xor       dl, dl
00d9d9f8 call      0xd95820
00d9d9fd mov       edx, dword ptr [esi + 0x1a0]
00d9da03 lea       edi, [esi + 0x1a0]
00d9da09 mov       dword ptr [esi + 0x58], ebx
00d9da0c mov       dword ptr [esi + 0x1d0], ebx
00d9da12 cmp       edx, edi
00d9da14 je        0xd9da4d
00d9da16 mov       ecx, dword ptr [edx]
00d9da18 mov       eax, dword ptr [edx + 4]
00d9da1b mov       dword ptr [ecx + 4], eax
00d9da1e mov       ecx, dword ptr [edx + 4]
00d9da21 mov       eax, dword ptr [edx]
00d9da23 mov       dword ptr [ecx], eax
00d9da25 mov       dword ptr [edx], ebx
00d9da27 mov       dword ptr [edx + 4], ebx
00d9da2a mov       ecx, dword ptr [esi + 0x68]
00d9da2d cmp       ecx, ebx
00d9da2f je        0xd9da47
00d9da31 cmp       dword ptr [edx + 0x2c], ebx
00d9da34 je        0xd9da47
00d9da36 mov       eax, dword ptr [ecx]
00d9da38 mov       eax, dword ptr [eax + 0xc]
00d9da3b push      0x827
00d9da40 push      0xf76b1202
00d9da45 call      eax
00d9da47 mov       edx, dword ptr [edi]
00d9da49 cmp       edx, edi
00d9da4b jne       0xd9da16
00d9da4d mov       dword ptr [esi + 0x1d4], ebx
00d9da53 pop       edi
00d9da54 pop       esi
00d9da55 pop       ebx
00d9da56 ret       
00d9da57 int3      
00d9da58 int3      
00d9da59 int3      
00d9da5a int3      
00d9da5b int3      
00d9da5c int3      
00d9da5d int3      
00d9da5e int3      
00d9da5f int3      
00d9da60 mov       eax, dword ptr [ecx]
00d9da62 mov       edx, dword ptr [eax + 0x28]
00d9da65 call      edx
00d9da67 mov       ecx, eax
00d9da69 mov       eax, 0xaaaaaaab
00d9da6e mul       ecx
00d9da70 mov       eax, edx
00d9da72 shr       eax, 5
00d9da75 ret       
00d9da76 int3      
00d9da77 int3      
00d9da78 int3      
00d9da79 int3      
00d9da7a int3      
00d9da7b int3      
00d9da7c int3      
00d9da7d int3      
00d9da7e int3      
00d9da7f int3      
00d9da80 sub       edx, dword ptr [ecx + 0x70]
00d9da83 sub       edx, 0x20
00d9da86 jmp       0xd9cbc0
00d9da8b int3      
00d9da8c int3      
00d9da8d int3      
00d9da8e int3      
00d9da8f int3      
00d9da90 mov       eax, dword ptr [ecx + 0x1a4]
00d9da96 add       ecx, 0x1a0
00d9da9c cmp       ecx, eax
00d9da9e je        0xd9dab1
00d9daa0 cmp       edx, dword ptr [eax + 0x10]
00d9daa3 jb        0xd9daaa
00d9daa5 cmp       edx, dword ptr [eax + 0xc]
00d9daa8 jbe       0xd9dab4
00d9daaa mov       eax, dword ptr [eax + 4]
00d9daad cmp       ecx, eax
00d9daaf jne       0xd9daa0
00d9dab1 xor       eax, eax
00d9dab3 ret       
00d9dab4 mov       eax, 1
00d9dab9 ret       
00d9daba int3      
00d9dabb int3      
00d9dabc int3      
00d9dabd int3      
00d9dabe int3      
00d9dabf int3      
00d9dac0 mov       edx, dword ptr [ecx + 0x1a4]
00d9dac6 add       ecx, 0x1a0
00d9dacc xor       eax, eax
00d9dace cmp       ecx, edx
00d9dad0 je        0xd9dae5
00d9dad2 push      esi
00d9dad3 mov       esi, dword ptr [edx + 0xc]
00d9dad6 sub       esi, dword ptr [edx + 0x10]
00d9dad9 mov       edx, dword ptr [edx + 4]
00d9dadc lea       eax, [eax + esi + 0x20]
00d9dae0 cmp       ecx, edx
00d9dae2 jne       0xd9dad3
00d9dae4 pop       esi
00d9dae5 ret       
00d9dae6 int3      
00d9dae7 int3      
00d9dae8 int3      
00d9dae9 int3      
00d9daea int3      
00d9daeb int3      
00d9daec int3      
00d9daed int3      
00d9daee int3      
00d9daef int3      
00d9daf0 push      ebx
00d9daf1 push      ebp
00d9daf2 push      esi
00d9daf3 push      edi
00d9daf4 mov       edi, ecx
00d9daf6 mov       ebp, dword ptr [edi + 0x70]
00d9daf9 mov       ebx, edx
00d9dafb mov       esi, dword ptr [ebx + 4]
00d9dafe sub       esi, ebp
00d9db00 cmp       dword ptr [edi + 0x74], 1
00d9db04 jle       0xd9db13
00d9db06 lea       edx, [esi - 0x20]
00d9db09 call      0xd9cbc0
00d9db0e test      eax, eax
00d9db10 jne       0xd9db13
00d9db12 int3      
00d9db13 lea       edx, [esi - 0x20]
00d9db16 mov       ecx, edi
00d9db18 call      0xd9cd30
00d9db1d test      eax, eax
00d9db1f jne       0xd9db29
00d9db21 pop       edi
00d9db22 pop       esi
00d9db23 pop       ebp
00d9db24 mov       dword ptr [ebx + 4], eax
00d9db27 pop       ebx
00d9db28 ret       
00d9db29 pop       edi
00d9db2a pop       esi
00d9db2b lea       eax, [eax + ebp + 0x20]
00d9db2f pop       ebp
00d9db30 mov       dword ptr [ebx + 4], eax
00d9db33 pop       ebx
00d9db34 ret       
00d9db35 int3      
00d9db36 int3      
00d9db37 int3      
00d9db38 int3      
00d9db39 int3      
00d9db3a int3      
00d9db3b int3      
00d9db3c int3      
00d9db3d int3      
00d9db3e int3      
00d9db3f int3      
00d9db40 mov       eax, dword ptr [ecx]
00d9db42 mov       edx, dword ptr [esp + 4]
00d9db46 mov       eax, dword ptr [eax + 0x48]
00d9db49 call      eax
00d9db4b ret       4
00d9db4e int3      
00d9db4f int3      
00d9db50 mov       eax, dword ptr [ecx]
00d9db52 mov       edx, dword ptr [esp + 4]
00d9db56 mov       eax, dword ptr [eax + 0x50]
00d9db59 call      eax
00d9db5b ret       4
00d9db5e int3      
00d9db5f int3      
00d9db60 mov       eax, dword ptr [ecx]
00d9db62 mov       edx, dword ptr [esp + 4]
00d9db66 mov       eax, dword ptr [eax + 0x58]
00d9db69 call      eax
00d9db6b ret       4
00d9db6e int3      
00d9db6f int3      
00d9db70 mov       eax, dword ptr [ecx]
00d9db72 mov       edx, dword ptr [esp + 4]
00d9db76 mov       eax, dword ptr [eax + 0x60]
00d9db79 call      eax
00d9db7b ret       4
00d9db7e int3      
00d9db7f int3      
00d9db80 mov       eax, dword ptr [ecx]
00d9db82 mov       edx, dword ptr [esp + 4]
00d9db86 mov       eax, dword ptr [eax + 0x68]
00d9db89 call      eax
00d9db8b ret       4
00d9db8e int3      
00d9db8f int3      
00d9db90 mov       eax, dword ptr [ecx]
00d9db92 mov       edx, dword ptr [esp + 4]
00d9db96 mov       eax, dword ptr [eax + 0x70]
00d9db99 call      eax
00d9db9b ret       4
00d9db9e int3      
00d9db9f int3      
wrapper_config
00d9dba0 mov       eax, dword ptr [esp + 0xc]
00d9dba4 push      ebx
00d9dba5 push      esi
00d9dba6 push      edi
00d9dba7 mov       esi, ecx
00d9dba9 mov       ecx, dword ptr [esp + 0x14]
00d9dbad push      eax
00d9dbae mov       eax, dword ptr [esp + 0x14]
00d9dbb2 push      ecx
00d9dbb3 lea       edi, [esi + 0x5c]
00d9dbb6 push      eax
00d9dbb7 mov       ecx, edi
00d9dbb9 call      0xd9d840
00d9dbbe lea       ecx, [esi + 0x38]
00d9dbc1 call      0xda1c40
00d9dbc6 push      0
00d9dbc8 push      edi
00d9dbc9 lea       edx, [esi + 0x38]
00d9dbcc mov       ecx, esi
00d9dbce call      0xda2500
00d9dbd3 pop       edi
00d9dbd4 pop       esi
00d9dbd5 pop       ebx
00d9dbd6 ret       0xc
00d9dbd9 int3      
00d9dbda int3      
00d9dbdb int3      
00d9dbdc int3      
00d9dbdd int3      
00d9dbde int3      
00d9dbdf int3      
00d9dbe0 push      esi
00d9dbe1 mov       esi, ecx
00d9dbe3 lea       ecx, [esi + 0x5c]
00d9dbe6 call      0xd9d980
00d9dbeb mov       ecx, esi
00d9dbed call      0xda2ce0
00d9dbf2 lea       ecx, [esi + 0x38]
00d9dbf5 pop       esi
00d9dbf6 jmp       0xda1c60
00d9dbfb int3      
00d9dbfc int3      
00d9dbfd int3      
00d9dbfe int3      
00d9dbff int3      
heap_destroy
00d9dc00 push      esi
00d9dc01 mov       esi, ecx
00d9dc03 mov       dword ptr [esi], 0xfd0b94
00d9dc09 call      0xd9d980
00d9dc0e mov       ecx, esi
00d9dc10 pop       esi
00d9dc11 jmp       0xda2dd0
00d9dc16 int3      
00d9dc17 int3      
00d9dc18 int3      
00d9dc19 int3      
00d9dc1a int3      
00d9dc1b int3      
00d9dc1c int3      
00d9dc1d int3      
00d9dc1e int3      
00d9dc1f int3      
