Function at 0x4bdb30
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
push edi
mov ecx, 0xc
push esi
push ebx
mov ebx, eax
mov esi, edx
sub esp, 0x9c
mov eax, dword [eax]
lea edx, [esp + 0x60]
mov dword [esp + 0x44], eax
mov eax, dword [ebx + 0x28]
mov edi, eax
mov dword [esp + 0x40], eax
mov eax, dword [ebx + 0x24]
lea eax, [edi + eax*4]
mov edi, edx
mov dword [esp + 0x48], eax
xor eax, eax
rep stosd dword es:[edi], eax
mov dword [esp + 0x80], 0x7d00
imul eax, esi, 0x1c
add eax, ebx
mov edx, dword [eax + 0x44]
mov edi, dword [eax + 0x44]
mov dword [eax + 0x2c], 0
mov eax, dword [ebx + 0x1c]
sar edx, 0x1f
xor edi, edx
sub edi, edx
mov edx, dword [ebx + 0x18]
test esi, esi
mov dword [esp + 0x2c], edi
lea edx, [edx + edx*4]
lea ecx, [eax + edx*8]
jne 0x4bdf3b
cmp eax, ecx
jae 0x4bdbc5
lea esi, [esi]
lea edi, [edi]
movsx edx, word [eax + 0xc]
add eax, 0x28
mov dword [eax - 0x10], edx
movsx edx, word [eax - 0x1a]
mov dword [eax - 0xc], edx
cmp ecx, eax
ja 0x4bdbb0
mov edi, dword [esp + 0x48]
cmp dword [esp + 0x40], edi
jae 0x4bdee7
mov eax, esi
mov edi, dword [esp + 0x2c]
mov dword [esp + 0x34], ebx
shl eax, 5
lea ebx, [esi*4]
mov dword [esp + 0x4c], esi
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0x28], edi
mov dword [esp + 0x38], ebx
xor edi, edi
mov eax, dword [eax]
mov ebx, eax
mov dword [esp + 0x24], eax
mov eax, dword [eax + 0x24]
cmp ebx, eax
je 0x4bde4f
movsx edx, byte [eax + 3]
mov ecx, edx
sar ecx, 0x1f
xor edx, ecx
sub edx, ecx
cmp edx, dword [esp + 0x2c]
je 0x4bdef4
mov ebx, dword [esp + 0x24]
mov byte [esp + 0x33], 0
mov edx, 0xffff8300
mov eax, 0x7d00
xor ebp, ebp
jmp 0x4bdc68
mov ecx, dword [ebx + 0x18]
cmp eax, ecx
cmovg eax, ecx
cmp edx, ecx
cmovl edx, ecx
movsx ecx, byte [ebx + 3]
cmp dword [esp + 0x28], ecx
jne 0x4bddd0
cmp dword [esp + 0x24], ebx
je 0x4bddd0
mov ebx, dword [ebx + 0x20]
test ebp, ebp
jne 0x4bdc40
cmp dword [esp + 0x24], ebx
je 0x4bde12
movsx esi, byte [ebx + 3]
mov ebp, esi
mov ecx, esi
sar ebp, 0x1f
mov byte [esp + 0x32], cl
mov ecx, ebp
xor ecx, esi
sub ecx, ebp
xor ebp, ebp
cmp ecx, dword [esp + 0x2c]
jne 0x4bdc65
mov eax, dword [esp + 0x3c]
sub eax, dword [esp + 0x38]
mov edi, dword [esp + 0x34]
mov dword [esp + 0x5c], 0
lea edx, [edi + eax + 0x20]
mov eax, dword [edx + 0xc]
mov edx, dword [edx + 0x10]
cmp eax, edx
jl 0x4bdd32
cmp edx, 0x2aaaaa9
jg 0x4bde35
mov eax, edx
sar eax, 2
lea ebp, [edx + eax + 4]
cmp ebp, 0x2aaaaaa
jg 0x4bde45
cmp edx, ebp
jg 0x4bde45
lea eax, [esp + 0x5c]
mov edi, dword [esp + 0x34]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x3c]
sub eax, dword [esp + 0x38]
lea edi, [edi + eax + 0x20]
mov eax, dword [edi + 0x14]
mov dword [esp + 0xc], ebp
mov dword [esp + 8], edx
mov dword [esp + 4], 0x30
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x44]
mov dword [esp], eax
call sym._ft_mem_realloc
mov dword [edi + 0x14], eax
mov eax, dword [esp + 0x5c]
test eax, eax
jne 0x4bde3a
mov dword [edi + 0x10], ebp
mov eax, dword [edi + 0xc]
mov edi, dword [esp + 0x34]
mov edx, dword [esp + 0x3c]
sub edx, dword [esp + 0x38]
mov ebp, 1
lea edx, [edi + edx + 0x20]
lea edi, [eax + 1]
mov ecx, dword [edx + 0x14]
mov dword [edx + 0xc], edi
lea edi, [eax + eax*2]
mov eax, dword [esp + 0x60]
shl edi, 4
add edi, ecx
mov dword [edi], eax
mov eax, dword [esp + 0x64]
mov dword [edi + 4], eax
mov eax, dword [esp + 0x68]
mov dword [edi + 8], eax
mov eax, dword [esp + 0x6c]
mov dword [edi + 0xc], eax
mov eax, dword [esp + 0x70]
mov dword [edi + 0x10], eax
mov eax, dword [esp + 0x74]
mov dword [edi + 0x14], eax
mov eax, dword [esp + 0x78]
mov dword [edi + 0x18], eax
mov eax, dword [esp + 0x7c]
mov dword [edi + 0x1c], eax
mov eax, dword [esp + 0x80]
mov dword [edi + 0x20], eax
mov eax, dword [esp + 0x84]
mov dword [edi + 0x24], eax
mov eax, dword [esp + 0x88]
mov dword [edi + 0x28], eax
mov eax, dword [esp + 0x8c]
mov dword [edi + 0x2c], eax
movzx eax, byte [esp + 0x32]
mov byte [edi + 1], al
mov eax, dword [ebx + 0x18]
mov dword [edi + 0x28], ebx
mov dword [edi + 0x2c], ebx
mov dword [esp + 0x28], esi
mov edx, eax
jmp 0x4bdc65
add eax, edx
movzx edx, word [ebx]
mov dword [edi + 0x2c], ebx
sar eax, 1
mov word [edi + 2], ax
mov eax, dword [edi + 0x28]
or dx, word [eax]
and edx, 3
je 0x4bddec
or byte [edi], 1
mov edx, dword [ebx + 0x1c]
mov eax, dword [eax + 0x1c]
cmp edx, eax
jle 0x4bde23
mov ecx, edx
sub ecx, eax
mov word [edi + 4], ax
mov word [edi + 6], dx
mov word [edi + 8], cx
xor edi, edi
cmp dword [esp + 0x24], ebx
jne 0x4bdc76
cmp byte [esp + 0x33], 0
jne 0x4bde4f
mov byte [esp + 0x33], 1
jmp 0x4bdc76
jge 0x4bdf5d
mov ecx, eax
mov esi, edx
sub ecx, edx
mov edx, eax
mov eax, esi
jmp 0x4bddfa
mov eax, 0x40
add esp, 0x9c
pop ebx
pop esi
pop edi
pop ebp
ret
mov ebp, 0x2aaaaaa
jmp 0x4bdcde
add dword [esp + 0x40], 4
mov eax, dword [esp + 0x40]
cmp dword [esp + 0x48], eax
ja 0x4bdbfd
imul esi, dword [esp + 0x4c], 0x1c
mov eax, dword [esp + 0x34]
lea edx, [eax + esi + 0x20]
mov eax, dword [edx + 0x14]
mov edx, dword [edx + 0xc]
lea esi, [edx + edx*2]
shl esi, 4
add esi, eax
cmp eax, esi
jb 0x4bdeaa
jmp 0x4bdee7
cmp ecx, edi
jle 0x4bde8f
sub ecx, edi
sar ecx, 1
add word [eax + 8], cx
mov ecx, dword [ebx + 0x20]
mov ecx, dword [ecx + 0x1c]
cmp edx, ecx
jge 0x4bdea3
sub ecx, edx
mov edx, ecx
sar edx, 1
add word [eax + 8], dx
add eax, 0x30
cmp esi, eax
jbe 0x4bdee7
mov edi, dword [eax + 0x28]
mov ebx, dword [eax + 0x2c]
mov ecx, dword [edi + 0x1c]
mov edi, dword [edi + 0x24]
mov edx, dword [ebx + 0x1c]
mov edi, dword [edi + 0x1c]
cmp ecx, edx
jl 0x4bde83
cmp ecx, edi
jge 0x4bdece
sub edi, ecx
mov ecx, edi
sar ecx, 1
add word [eax + 8], cx
mov ecx, dword [ebx + 0x20]
mov ecx, dword [ecx + 0x1c]
cmp edx, ecx
jle 0x4bdea3
sub edx, ecx
sar edx, 1
add word [eax + 8], dx
add eax, 0x30
cmp esi, eax
ja 0x4bdeaa
add esp, 0x9c
xor eax, eax
pop ebx
pop esi
pop edi
pop ebp
ret
movsx edx, byte [ebx + 3]
mov ecx, edx
sar ecx, 0x1f
xor edx, ecx
sub edx, ecx
cmp edx, dword [esp + 0x2c]
jne 0x4bdc27
mov ecx, ebx
mov ebx, dword [esp + 0x2c]
jmp 0x4bdf1b
cmp ecx, eax
je 0x4bdc27
mov eax, dword [eax + 0x24]
movsx edx, byte [eax + 3]
mov esi, edx
sar esi, 0x1f
xor edx, esi
sub edx, esi
cmp edx, ebx
je 0x4bdf13
mov eax, dword [eax + 0x20]
mov dword [esp + 0x24], eax
jmp 0x4bdc27
cmp eax, ecx
jae 0x4bdbc5
movsx edx, word [eax + 0xe]
add eax, 0x28
mov dword [eax - 0x10], edx
movsx edx, word [eax - 0x1c]
mov dword [eax - 0xc], edx
cmp ecx, eax
ja 0x4bdf43
jmp 0x4bdbc5
mov eax, edx
xor ecx, ecx
jmp 0x4bddfa