Function at 0x48e860
Capabilities:
Enumerate pe sections
Resolve function by parsing pe exports

Disassembly:
push edi
push esi
push ebp
push ebx
sub esp, 0x224
mov ebp, edx
mov dword [esp + 8], 0
lea edx, [esp + 0x10]
mov dword [esp + 4], 1
mov dword [esp + 0xc], edx
mov dword [esp + 0x208], ecx
mov dword [esp], eax
mov dword [esp + 0x204], eax
call fcn.0045dff0
test eax, eax
je 0x48efee
mov eax, dword [esp + 0x10]
cmp eax, 0x31000
jb 0x48e8b4
cmp eax, 0x33001
jbe 0x48e8e5
mov dword [esp + 0x40], 2
mov dword [esp], 0x80000004
call fcn.00464470
mov dword [esp + 0x44], eax
lea eax, [esp + 0x40]
mov dword [esp], eax
call fcn.00464480
add esp, 0x224
xor eax, eax
pop ebx
pop ebp
pop esi
pop edi
ret
mov eax, dword [esp + 0x204]
lea edx, [esp + 0x14]
mov dword [esp + 8], 0x2c
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0045d5a0
cmp eax, 0x2c
je 0x48e916
add esp, 0x224
xor eax, eax
pop ebx
pop ebp
pop esi
pop edi
ret
lea eax, [esp + 0x14]
mov dword [esp + 4], 0x2c
mov dword [esp], eax
call fcn.00464470
lea eax, [esp + 0x20]
mov dword [esp + 4], 0xc
mov dword [esp], eax
call fcn.0045e260
lea eax, [esp + 0x2c]
mov dword [esp + 4], 0xc
mov dword [esp], eax
call fcn.0045e260
mov eax, dword [ebp]
mov edx, dword [0x4f7aa0]
mov dword [esp + 0x210], eax
add edx, eax
test eax, eax
mov dword [ebp], edx
je 0x48effb
mov edi, eax
xor eax, eax
mov dword [edi], 0xffffffff
mov edx, dword [esp + 0x20]
lea ecx, [edi + 0x10]
mov dword [edi + 0x74], edx
mov edx, dword [esp + 0x24]
mov dword [edi + 0x78], edx
mov edx, dword [esp + 0x28]
mov dword [edi + 0x7c], edx
mov edx, dword [esp + 0x2c]
mov dword [edi + 0x68], edx
mov edx, dword [esp + 0x30]
mov dword [edi + 0x6c], edx
mov edx, dword [esp + 0x34]
mov dword [edi + 0x70], edx
movzx edx, word [esp + 0x14]
mov word [edi + 0x8c], dx
movzx edx, word [esp + 0x18]
mov word [edi + 0x90], dx
movzx edx, word [esp + 0x1c]
mov dword [edi + 4], eax
mov word [edi + 0x8e], dx
mov dword [edi + 8], eax
mov dword [edi + 0x30], eax
mov dword [edi + 0xc], eax
mov edi, ecx
xor eax, eax
mov dword [edi], eax
mov dword [edi + 4], eax
mov dword [edi + 8], eax
mov dword [edi + 0xc], eax
mov dword [edi + 0x10], eax
mov dword [edi + 0x14], eax
mov dword [edi + 0x18], eax
mov dword [edi + 0x1c], eax
mov eax, dword [esp + 0x210]
xor edx, edx
mov ecx, 0x48
add ecx, eax
mov ebx, 0x48
add ebx, eax
lea esi, [eax + 0x40]
mov dword [eax + 0x4c], ecx
lea ecx, [eax + 0x40]
mov dword [eax + 0x48], ebx
lea ebx, [eax + 0x38]
mov dword [eax + 0x44], esi
lea esi, [eax + 0x38]
mov dword [eax + 0x40], ecx
mov dword [eax + 0x3c], ebx
mov dword [eax + 0x38], esi
mov dword [eax + 0x80], edx
mov dword [eax + 0x88], edx
mov dword [eax + 0x34], edx
mov dword [eax + 0x84], edx
mov eax, dword [esp + 0x208]
mov eax, dword [eax + 8]
test eax, 0x1000000
jne 0x48ed90
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x48ebc8
lea edx, [eax*8]
mov ecx, dword [esp + 0x210]
lea edx, [edx + eax*4]
mov eax, dword [ebp]
mov ebx, eax
add ebx, edx
test eax, eax
mov dword [ebp], ebx
mov dword [ecx + 8], eax
je 0x48ef88
mov ecx, dword [esp + 0x204]
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov dword [esp], ecx
call fcn.0045e390
test eax, eax
je 0x48efee
mov edx, dword [esp + 0x244]
test dl, 0x10
je 0x48eaf6
mov eax, dword [ebp]
mov ebx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x210]
lea esi, [eax + ebx*4]
add ebx, ebx
mov dword [ebp], esi
mov dword [ecx + 0xc], eax
add ebx, ebx
test eax, eax
je 0x48ef53
mov edx, dword [esp + 0x204]
mov dword [esp + 4], eax
mov dword [esp + 8], ebx
mov dword [esp], edx
call fcn.0045d5a0
cmp eax, ebx
mov edx, dword [esp + 0x244]
jne 0x48efee
test dl, 8
je 0x48eb3d
mov eax, dword [ebp]
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x210]
lea ebx, [eax + edx*4]
add edx, edx
mov dword [ebp], ebx
mov dword [ecx + 0x30], eax
add edx, edx
test eax, eax
je 0x48ef1e
mov ecx, dword [esp + 0x204]
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov dword [esp], ecx
call fcn.0045d5a0
test eax, eax
je 0x48efee
mov eax, dword [esp + 0x208]
mov eax, dword [eax + 0x20]
test eax, eax
jle 0x48ebc8
mov edx, dword [esp + 0x210]
xor ebx, ebx
movzx edi, word [edx + 0x8e]
mov edx, edi
add edx, edx
add edx, edx
add edx, edx
test eax, eax
mov dword [esp + 0x200], edx
jle 0x48ebc8
mov esi, dword [esp + 0x210]
lea esi, [esi]
mov eax, dword [ebp]
lea edx, [eax + edi*8]
test eax, eax
mov dword [ebp], edx
mov dword [esi + ebx*4 + 0x10], eax
je 0x48eee2
mov edx, dword [esp + 0x204]
mov ecx, dword [esp + 0x200]
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
mov dword [esp], edx
call fcn.0045e390
test eax, eax
je 0x48f035
inc ebx
mov eax, dword [esp + 0x208]
cmp ebx, dword [eax + 0x20]
jl 0x48eb80
mov eax, dword [esp + 0x18]
test eax, eax
je 0x48ed90
mov edx, dword [esp + 0x210]
lea esi, [eax + eax]
add esi, esi
add esi, esi
mov ecx, eax
mov eax, dword [ebp]
lea ecx, [eax + ecx*8]
test eax, eax
mov dword [ebp], ecx
mov dword [edx + 4], eax
je 0x48eead
mov edx, dword [esp + 0x10]
cmp edx, 0x30400
mov edx, esi
jae 0x48ec16
mov edx, esi
add edx, 0x80000000
adc edx, 0x80000000
sar edx, 1
mov ecx, dword [esp + 0x204]
mov ebx, edx
mov dword [esp + 4], eax
mov dword [esp + 8], ebx
mov dword [esp], ecx
call fcn.0045d5a0
cmp eax, ebx
jne 0x48efee
mov eax, dword [esp + 0x10]
cmp eax, 0x30400
jae 0x48ed7a
mov eax, dword [esp + 0x210]
mov edx, dword [0x504988]
movzx ecx, word [eax + 0x90]
mov eax, dword [eax + 4]
mov dword [esp + 0x200], eax
mov eax, ecx
add eax, eax
mov dword [esp + 0x20c], ecx
add eax, eax
mov dword [esp], eax
call dword [edx + 0x130]
mov ecx, dword [esp + 0x20c]
mov edi, eax
add ecx, ecx
mov ebx, edi
add ecx, ecx
mov esi, dword [esp + 0x200]
mov dword [esp + 0x208], edi
push ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
pop ecx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [esp + 0x20c]
test eax, eax
jle 0x48ed62
mov edx, dword [esp + 0x200]
mov dword [esp + 0x214], ebp
lea esi, [edx + eax*8]
mov eax, esi
sub eax, edx
and eax, 0xfffffff0
add eax, edx
mov dword [esp + 0x218], eax
cmp edx, eax
jge 0x48ed2f
mov esi, esi
lea edi, [edi]
movzx eax, byte [ebx]
mov word [edx], ax
movzx eax, byte [ebx + 1]
mov word [edx + 2], ax
movzx eax, byte [ebx + 2]
mov word [edx + 4], ax
movzx eax, byte [ebx + 3]
mov word [edx + 6], ax
movzx eax, byte [ebx + 4]
mov word [edx + 8], ax
movzx eax, byte [ebx + 5]
mov word [edx + 0xa], ax
movzx eax, byte [ebx + 6]
mov word [edx + 0xc], ax
movzx eax, byte [ebx + 7]
add ebx, 8
mov word [edx + 0xe], ax
mov eax, dword [esp + 0x218]
add edx, 0x10
cmp edx, eax
jl 0x48ece0
cmp edx, esi
jge 0x48ed5b
movzx eax, byte [ebx]
mov word [edx], ax
movzx eax, byte [ebx + 1]
mov word [edx + 2], ax
movzx eax, byte [ebx + 2]
mov word [edx + 4], ax
movzx eax, byte [ebx + 3]
add ebx, 4
mov word [edx + 6], ax
add edx, 8
cmp edx, esi
jl 0x48ed33
mov ebp, dword [esp + 0x214]
mov eax, dword [esp + 0x208]
mov edx, dword [0x504988]
mov dword [esp], eax
call dword [edx + 0x134]
jmp 0x48ed90
mov eax, dword [esp + 0x210]
mov eax, dword [eax + 4]
mov dword [esp + 4], esi
mov dword [esp], eax
call fcn.00464470
mov eax, dword [esp + 0x38]
test eax, eax
jne 0x48edab
mov eax, dword [esp + 0x210]
mov dword [eax + 0x80], 0
jmp 0x48ee21
mov eax, dword [esp + 0x204]
lea edx, [esp + 0x78]
mov dword [esp + 8], 0x180
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0045d5a0
cmp eax, 0x180
je 0x48edde
add esp, 0x224
xor eax, eax
pop ebx
pop ebp
pop esi
pop edi
ret
lea eax, [esp + 0x78]
mov dword [esp], eax
call fcn.0048ddd0
add eax, 3
mov edi, dword [ebp]
mov ecx, eax
and ecx, 0xfffffffc
mov eax, dword [esp + 0x210]
mov edx, edi
add edx, ecx
test edi, edi
mov dword [ebp], edx
mov dword [eax + 0x80], edi
je 0x48efbd
lea esi, [esp + 0x78]
push ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
pop ecx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [esp + 0x210]
mov dword [esp], 0x4f7aa0
mov dword [esp + 4], eax
call fcn.004735e0
xor eax, eax
mov edx, dword [esp + 0x204]
mov dword [0x506a8c], eax
mov dword [0x506a88], eax
mov dword [esp + 4], edx
mov eax, dword [esp + 0x210]
mov dword [esp], 0x4f7aa0
mov dword [esp + 8], eax
call fcn.00476eb0
test eax, eax
je 0x48efee
mov eax, dword [0x506a88]
test eax, eax
je 0x48ee9b
mov edx, dword [esp + 0x210]
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov eax, dword [0x506a8c]
mov dword [esp], 0x4f7aa0
mov dword [esp + 0xc], eax
call fcn.00477080
mov eax, dword [esp + 0x210]
add esp, 0x224
pop ebx
pop ebp
pop esi
pop edi
ret
mov dword [esp + 0x70], 2
mov dword [esp], 0x80000013
mov dword [esp + 4], esi
call fcn.00464470
mov dword [esp + 0x74], eax
lea eax, [esp + 0x70]
mov dword [esp], eax
call fcn.00464480
add esp, 0x224
xor eax, eax
pop ebx
pop ebp
pop esi
pop edi
ret
mov eax, dword [esp + 0x200]
mov dword [esp], 0x80000013
mov dword [esp + 0x68], 2
mov dword [esp + 4], eax
call fcn.00464470
mov dword [esp + 0x6c], eax
lea eax, [esp + 0x68]
mov dword [esp], eax
call fcn.00464480
add esp, 0x224
xor eax, eax
pop ebx
pop ebp
pop esi
pop edi
ret
mov dword [esp + 0x60], 2
mov dword [esp], 0x80000013
mov dword [esp + 4], edx
call fcn.00464470
mov dword [esp + 0x64], eax
lea eax, [esp + 0x60]
mov dword [esp], eax
call fcn.00464480
add esp, 0x224
xor eax, eax
pop ebx
pop ebp
pop esi
pop edi
ret
mov dword [esp + 0x58], 2
mov dword [esp], 0x80000013
mov dword [esp + 4], ebx
call fcn.00464470
mov dword [esp + 0x5c], eax
lea eax, [esp + 0x58]
mov dword [esp], eax
call fcn.00464480
add esp, 0x224
xor eax, eax
pop ebx
pop ebp
pop esi
pop edi
ret
mov dword [esp + 0x50], 2
mov dword [esp], 0x80000013
mov dword [esp + 4], edx
call fcn.00464470
mov dword [esp + 0x54], eax
lea eax, [esp + 0x50]
mov dword [esp], eax
call fcn.00464480
add esp, 0x224
xor eax, eax
pop ebx
pop ebp
pop esi
pop edi
ret
mov dword [esp + 0x1f8], 2
mov dword [esp], 0x80000013
mov dword [esp + 4], ecx
call fcn.00464470
mov dword [esp + 0x1fc], eax
lea eax, [esp + 0x1f8]
mov dword [esp], eax
call fcn.00464480
add esp, 0x224
xor eax, eax
pop ebx
pop ebp
pop esi
pop edi
ret
mov eax, dword [0x4f7aa0]
mov dword [esp], 0x80000013
mov dword [esp + 4], eax
mov dword [esp + 0x48], 2
call fcn.00464470
mov dword [esp + 0x4c], eax
lea eax, [esp + 0x48]
mov dword [esp], eax
call fcn.00464480
add esp, 0x224
xor eax, eax
pop ebx
pop ebp
pop esi
pop edi
ret
add esp, 0x224
xor eax, eax
pop ebx
pop ebp
pop esi
pop edi
ret