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

Disassembly:
sub esp, 0xe0
mov eax, dword [0x5dca44]
xor eax, esp
push ebx
mov ebx, dword [esp + 0xf0]
push ebp
mov ebp, dword [esp + 0xf0]
mov cl, byte [ebp + 4]
push esi
mov esi, dword [esp + 0xf0]
mov dword [esp + 0xe8], eax
mov eax, dword [esp + 0xfc]
and cl, 3
cmp cl, 3
push edi
mov dword [esp + 0x10], esi
mov dword [esp + 0x20], eax
jne 0x48eac9
lea edx, [esp + 0x4c]
push edx
push 0x5b8d28
push ebp
call fcn.00480660
mov edx, dword [esp + 0x58]
lea eax, [esp + 0x58]
push eax
push 0x10
lea ecx, [esp + 0x64]
push ecx
push 2
push edx
mov eax, ecx
push eax
call fcn.00497230
mov ecx, 0xa
mov edi, ebx
rep movsd dword es:[edi], dword [esi]
lea ecx, [esp + 0x3c]
push ecx
lea edx, [esp + 0x74]
push edx
call fcn.0048fef0
mov esi, dword [esp + 0x44]
add esp, 0x2c
dec esi
test esi, esi
jle 0x48eac9
lea ebx, [ebx]
push ebx
push ebp
push ebx
push ebx
call fcn.0046ae30
lea eax, [esp + 0x24]
push eax
dec esi
lea ecx, [esp + 0x60]
push esi
push ecx
call fcn.0048fea0
mov eax, dword [esp + 0x30]
add esp, 0x1c
test eax, eax
je 0x48eac5
mov edx, dword [esp + 0x10]
push ebx
push ebp
push edx
push ebx
call fcn.0046ae30
add esp, 0x10
test esi, esi
jg 0x48ea90
mov al, byte [ebp + 4]
and al, 7
cmp al, 5
jne 0x48ec57
lea ecx, [esp + 0x4c]
push ecx
lea edx, [esp + 0x28]
push edx
push ebp
mov dword [esp + 0x30], 1
mov word [esp + 0x34], 5
call fcn.0048f020
mov edx, dword [esp + 0x58]
lea eax, [esp + 0x58]
push eax
push 0x10
lea ecx, [esp + 0x64]
push ecx
push 3
push edx
mov eax, ecx
push eax
call fcn.00497230
mov esi, dword [esp + 0x34]
mov ecx, 0xa
lea edi, [esp + 0x48]
rep movsd dword es:[edi], dword [esi]
lea ecx, [esp + 0x3c]
push ecx
lea edx, [esp + 0x74]
push edx
call fcn.0048fef0
mov esi, dword [esp + 0x44]
add esp, 0x2c
dec esi
test esi, esi
jle 0x48eb87
lea ebx, [ebx]
lea eax, [esp + 0x24]
push eax
push ebp
mov ecx, eax
push ecx
mov edx, eax
push edx
call fcn.0046ae30
lea eax, [esp + 0x24]
push eax
dec esi
lea ecx, [esp + 0x60]
push esi
push ecx
call fcn.0048fea0
mov eax, dword [esp + 0x30]
add esp, 0x1c
test eax, eax
je 0x48eb83
mov eax, dword [esp + 0x10]
lea edx, [esp + 0x24]
push edx
push ebp
push eax
mov ecx, edx
push ecx
call fcn.0046ae30
add esp, 0x10
test esi, esi
jg 0x48eb40
mov edx, dword [esp + 0x10]
push ebx
push ebp
push edx
lea eax, [esp + 0x30]
push eax
call fcn.0046ae30
lea ecx, [esp + 0x34]
push ecx
push ebp
mov edx, ecx
push ebx
push edx
call fcn.0046ae30
mov esi, dword [esp + 0x40]
push esi
lea eax, [esp + 0x48]
push 0x5b6578
push eax
call fcn.0046acf0
mov eax, dword [esi]
add esp, 0x2c
cmp eax, 1
je 0x48ec57
push ebx
push ebp
lea ecx, [esp + 0x2c]
push ecx
push ebx
mov dword [esp + 0x34], 1
mov word [esp + 0x38], 2
call fcn.0046ae30
mov esi, dword [esp + 0x28]
add esp, 0x10
dec esi
test esi, esi
jle 0x48ec36
lea edx, [esp + 0x24]
push edx
push ebp
mov eax, edx
push eax
mov ecx, edx
push ecx
call fcn.0046ae30
lea edx, [esp + 0x24]
push edx
dec esi
lea eax, [esp + 0x60]
push esi
push eax
call fcn.0048fea0
mov eax, dword [esp + 0x30]
add esp, 0x1c
test eax, eax
je 0x48ec32
lea ecx, [esp + 0x24]
push ecx
push ebp
mov edx, ecx
push edx
mov eax, ecx
push eax
call fcn.00480ac0
add esp, 0x10
test esi, esi
jg 0x48ebf1
lea ecx, [esp + 0x24]
push ecx
push ebp
mov edx, ecx
push edx
mov eax, ecx
push eax
call fcn.0046ae30
push ebx
push ebp
lea ecx, [esp + 0x3c]
push ebx
push ecx
call fcn.0046ae30
add esp, 0x20
mov dl, byte [ebp + 4]
and dl, 7
cmp dl, 1
jne 0x48efd7
lea eax, [esp + 0x4c]
push eax
push 0x5b8d28
push ebp
call fcn.0048f020
add esp, 0xc
xor esi, esi
mov dword [esp + 0x1c], esi
nop
test byte [esp + 0x50], 1
jne 0x48ecae
mov eax, dword [esp + 0x4c]
lea ecx, [esp + 0x4c]
push ecx
push 0x10
lea edx, [esp + 0x58]
push edx
push 1
push eax
mov ecx, edx
push ecx
call fcn.00497230
add esp, 0x18
inc esi
cmp esi, 0x100
jl 0x48ec80
mov dword [esp + 0x1c], esi
mov ecx, 0xa
mov esi, 0x5b8d28
lea edi, [esp + 0xc4]
rep movsd dword es:[edi], dword [esi]
lea edx, [esp + 0xc4]
push edx
mov eax, edx
push 0x5b8d28
push eax
call fcn.00480660
mov ecx, 0xa
lea esi, [esp + 0xd0]
lea edi, [esp + 0xa8]
rep movsd dword es:[edi], dword [esi]
lea ecx, [esp + 0x24]
push ecx
lea edx, [esp + 0x5c]
push edx
call fcn.0048fef0
mov esi, dword [esp + 0x2c]
add esp, 0x14
dec esi
test esi, esi
jle 0x48ed60
lea ebx, [ebx]
lea eax, [esp + 0x9c]
push eax
push ebp
mov ecx, eax
push ecx
mov edx, eax
push edx
call fcn.0046ae30
lea eax, [esp + 0x24]
push eax
dec esi
lea ecx, [esp + 0x60]
push esi
push ecx
call fcn.0048fea0
mov eax, dword [esp + 0x30]
add esp, 0x1c
test eax, eax
je 0x48ed5c
lea edx, [esp + 0x9c]
push edx
push ebp
lea eax, [esp + 0xcc]
push eax
mov ecx, edx
push ecx
call fcn.0046ae30
add esp, 0x10
test esi, esi
jg 0x48ed10
mov ecx, 0xa
lea esi, [esp + 0x9c]
lea edi, [esp + 0x74]
rep movsd dword es:[edi], dword [esi]
mov esi, dword [esp + 0x1c]
dec esi
test esi, esi
jle 0x48ed97
jmp 0x48ed80
lea edx, [esp + 0x74]
push edx
push ebp
mov eax, edx
push eax
mov ecx, edx
push ecx
call fcn.0046ae30
add esp, 0x10
dec esi
jne 0x48ed80
lea edx, [esp + 0x74]
push edx
push ebp
mov eax, edx
push 0x5b8d28
push eax
call fcn.00480ac0
mov esi, dword [esp + 0x30]
push esi
lea ecx, [esp + 0x88]
push 0x5b9138
push ecx
call fcn.0046acf0
mov eax, dword [esi]
add esp, 0x1c
cmp eax, 1
jne 0x48ecc5
lea edx, [esp + 0x4c]
push edx
mov eax, edx
push 0x5b8d28
push eax
call fcn.0048f020
mov eax, dword [esp + 0x58]
lea ecx, [esp + 0x58]
push ecx
push 0x10
lea edx, [esp + 0x64]
push edx
push 1
push eax
mov ecx, edx
push ecx
call fcn.00497230
mov esi, dword [esp + 0x34]
lea edx, [esp + 0x3c]
push edx
lea eax, [esp + 0x74]
mov ecx, 0xa
mov edi, ebx
push eax
rep movsd dword es:[edi], dword [esi]
call fcn.0048fef0
mov esi, dword [esp + 0x44]
add esp, 0x2c
dec esi
test esi, esi
jle 0x48ee5d
push ebx
push ebp
push ebx
push ebx
call fcn.0046ae30
lea ecx, [esp + 0x24]
push ecx
dec esi
lea edx, [esp + 0x60]
push esi
push edx
call fcn.0048fea0
mov eax, dword [esp + 0x30]
add esp, 0x1c
test eax, eax
je 0x48ee59
mov eax, dword [esp + 0x10]
push ebx
push ebp
push eax
push ebx
call fcn.0046ae30
add esp, 0x10
test esi, esi
jg 0x48ee24
lea ecx, [esp + 0x24]
push ecx
push ebp
push ebx
push ebx
call fcn.0046ae30
mov esi, dword [esp + 0x20]
lea edx, [esp + 0x34]
push edx
push ebp
mov eax, edx
push esi
push eax
call fcn.0046ae30
push ebx
push ebp
push esi
push ebx
call fcn.0046ae30
mov esi, dword [esp + 0x50]
push esi
lea ecx, [esp + 0x58]
push 0x5b6578
push ecx
call fcn.0046acf0
mov eax, dword [esi]
add esp, 0x3c
cmp eax, 1
je 0x48effe
jmp 0x48eeb0
mov eax, dword [esp + 0x1c]
test eax, eax
mov ecx, 0xa
lea esi, [esp + 0x24]
lea edi, [esp + 0x74]
rep movsd dword es:[edi], dword [esi]
mov dword [esp + 0x10], 0
jg 0x48eee0
mov esi, dword [esp + 0x20]
jmp 0x48ef23
mov eax, dword [esp + 0x1c]
lea esp, [esp]
mov esi, dword [esp + 0x20]
cmp dword [esi], 1
je 0x48ef23
lea edx, [esp + 0x74]
push edx
push ebp
mov eax, edx
push eax
mov ecx, edx
push ecx
call fcn.0046ae30
push esi
lea edx, [esp + 0x88]
push 0x5b6578
push edx
call fcn.0046acf0
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x38]
add esp, 0x1c
inc eax
cmp eax, ecx
mov dword [esp + 0x10], eax
jl 0x48eed5
mov eax, ecx
mov edx, dword [esp + 0x10]
cmp edx, eax
je 0x48efcf
sub eax, edx
dec eax
test eax, eax
mov ecx, 0xa
lea esi, [esp + 0x9c]
lea edi, [esp + 0x74]
rep movsd dword es:[edi], dword [esi]
jle 0x48ef67
mov esi, eax
lea ebx, [ebx]
lea eax, [esp + 0x74]
push eax
push ebp
mov ecx, eax
push ecx
mov edx, eax
push edx
call fcn.0046ae30
add esp, 0x10
dec esi
jne 0x48ef50
lea eax, [esp + 0x9c]
push eax
lea ecx, [esp + 0x78]
push ebp
push ecx
mov edx, ecx
push edx
call fcn.0046ae30
mov eax, dword [esp + 0x20]
push ebx
push ebp
lea ecx, [esp + 0x8c]
push ecx
push ebx
mov dword [esp + 0x3c], eax
call fcn.0046ae30
lea edx, [esp + 0x44]
push edx
push ebp
lea eax, [esp + 0xc4]
push eax
mov ecx, edx
push ecx
call fcn.0046ae30
mov esi, dword [esp + 0x50]
push esi
lea edx, [esp + 0x58]
push 0x5b6578
push edx
call fcn.0046acf0
mov eax, dword [esi]
add esp, 0x3c
cmp eax, 1
jne 0x48eeb0
jmp 0x48effe
mov dword [esi], 0
jmp 0x48effe
lea eax, [esp + 0x74]
push eax
push ebp
push ebx
push ebx
call fcn.0046ae30
mov ecx, dword [esp + 0x30]
mov eax, dword [esp + 0x20]
push ecx
lea edx, [esp + 0x88]
push edx
push eax
call fcn.0046acf0
add esp, 0x1c
mov ecx, dword [esp + 0xec]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
xor eax, eax
call fcn.0049c81f
add esp, 0xe0
ret