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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x573e70
mov eax, dword fs:[0]
push eax
sub esp, 0x948
mov eax, dword [0x5c31c8]
xor eax, esp
mov dword [esp + 0x940], eax
push ebx
push esi
push edi
mov eax, dword [0x5c31c8]
xor eax, esp
push eax
lea eax, [esp + 0x958]
mov dword fs:[0], eax
mov esi, ecx
mov dword [esp + 0x3c], esi
mov ecx, dword [ebp + 0xc]
xor edx, edx
mov ebx, dword [ebp + 8]
mov edi, dword [ebp + 0x10]
mov dword [esp + 0x20], ecx
cmp dword [esi + 4], edx
je 0x48bac2
mov eax, dword [ebx + 0x30]
or eax, dword [ebx + 0x34]
je 0x48b7de
test edi, edi
jle 0x48bac2
lea eax, [esp + 0x14]
mov byte [esp + 0x14], dl
push eax
push ecx
lea ecx, [esp + 0x30]
mov dword [esp + 0x30], edx
mov dword [esp + 0x34], edx
mov dword [esp + 0x38], edx
call fcn.0048c900
and dword [esp + 0x960], 0
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x2c]
sub eax, ecx
push 0
push eax
push ecx
lea ecx, [esp + 0x58]
call fcn.005321af
mov byte [esp + 0x960], 1
mov eax, dword [ebx + 0x14]
sub eax, dword [ebx + 0x10]
cmp eax, 0x10
jne 0x48b750
mov ecx, dword [ebx + 0x10]
mov edx, 0x592590
call fcn.00532cc0
push 0x32
pop ecx
push 0x35
pop edx
test al, al
movzx ecx, cl
push 0
cmovne ecx, edx
lea eax, [esp + 0x18]
push 1
mov byte [esp + 0x1c], cl
lea ecx, [esp + 0x54]
push eax
call fcn.00531e36
and dword [esp + 0x18], 0
lea eax, [esp + 0x18]
push 0
push 4
push eax
lea ecx, [esp + 0x58]
call fcn.00531e36
push 0
push 0x10
push dword [ebx + 0x10]
lea ecx, [esp + 0x58]
call fcn.00531e36
mov ecx, dword [esi]
call fcn.00448333
push 0
mov dword [esp + 0x1c], eax
lea ecx, [esp + 0x50]
push 4
lea eax, [esp + 0x20]
push eax
call fcn.00531e36
mov al, byte [ebx + 0x28]
lea ecx, [esp + 0x4c]
push 0
mov byte [esp + 0x18], al
lea eax, [esp + 0x18]
push 1
push eax
call fcn.00531e36
mov eax, dword [ebp + 0x14]
lea ecx, [esp + 0x4c]
push 0
mov dword [esp + 0x1c], eax
lea eax, [esp + 0x1c]
push 4
push eax
call fcn.00531e36
movzx eax, di
lea ecx, [esp + 0x4c]
push 0
mov dword [esp + 0x1c], eax
lea eax, [esp + 0x1c]
push 2
push eax
call fcn.00531e36
mov eax, edi
lea ecx, [esp + 0x4c]
cdq
push edx
push eax
push dword [esp + 0x28]
call fcn.00531e36
push 0x10
lea ecx, [esp + 0x50]
call fcn.0048b4ec
mov ecx, dword [esp + 0x28]
lea edx, [edi + 0x1b]
add edx, eax
lea ecx, [ecx + 5]
call fcn.00532a96
mov ecx, dword [esp + 0x28]
mov dword [ecx + 1], eax
push 0
lea ecx, [esp + 0xc8]
call fcn.0045173c
mov byte [esp + 0x960], 2
mov eax, dword [ebx + 0x30]
mov ecx, dword [esi]
mov dword [esp + 0xf4], eax
mov eax, dword [ebx + 0x34]
push 0x32
mov dword [esp + 0xfc], eax
pop eax
push dword [esp + 0x64]
mov byte [esp + 0xe4], al
lea eax, [esp + 0xc8]
push dword [esp + 0x2c]
mov dword [esp + 0xec], 2
push eax
call fcn.00449e9b
test al, al
je 0x48b7bc
mov ecx, dword [esi + 4]
mov eax, edi
cdq
add dword [ecx + 0x2a0], eax
adc dword [ecx + 0x2a4], edx
lea ecx, [esp + 0xc4]
call fcn.00448081
lea ecx, [esp + 0x28]
mov dword [esp + 0x4c], 0x58ef6c
call fcn.00408f76
jmp 0x48bac2
push edi
push ecx
lea ecx, [esp + 0xa4]
call fcn.005321e4
mov dword [esp + 0x960], 3
mov eax, dword [ebx + 0x14]
sub eax, dword [ebx + 0x10]
cmp eax, 0x10
jne 0x48bac2
mov ecx, dword [ebx + 0x10]
mov edx, 0x592590
mov byte [esp + 0x14], 0x32
call fcn.00532cc0
movzx ecx, byte [esp + 0x14]
test al, al
push 0x35
pop edx
cmovne ecx, edx
xor edi, edi
and dword [esp + 0x18], edi
mov dword [esp + 0x44], ecx
mov dword [esp + 0x20], edi
cmp dword [ebp + 0x14], edi
jle 0x48ba7a
mov eax, dword [esp + 0x9c]
lea ecx, [esp + 0x9c]
push 1
push 0
push 0
call dword [eax + 0x10]
cmp edx, dword [esp + 0xb8]
jg 0x48ba7a
jl 0x48b86f
cmp eax, dword [esp + 0xb4]
jae 0x48ba7a
xor edi, edi
lea eax, [esp + 0x14c]
push edi
push 0x800
push eax
lea ecx, [esp + 0x80]
call fcn.005321af
mov eax, dword [esp + 0x44]
push edi
mov byte [esp + 0x964], 4
mov byte [esp + 0x18], al
lea eax, [esp + 0x18]
push 1
push eax
call fcn.00531e36
push edi
push 4
lea eax, [esp + 0x24]
mov dword [esp + 0x24], edi
push eax
lea ecx, [esp + 0x80]
call fcn.00531e36
push edi
push 0x10
push dword [ebx + 0x10]
lea ecx, [esp + 0x80]
call fcn.00531e36
mov ecx, dword [esi]
call fcn.00448333
push edi
mov dword [esp + 0x4c], eax
lea ecx, [esp + 0x78]
push 4
lea eax, [esp + 0x50]
push eax
call fcn.00531e36
mov al, byte [ebx + 0x28]
lea ecx, [esp + 0x74]
push edi
mov byte [esp + 0x18], al
lea eax, [esp + 0x18]
push 1
push eax
call fcn.00531e36
lea eax, [esp + 0x38]
push eax
lea ecx, [esp + 0xa0]
call fcn.00441a62
mov eax, dword [esp + 0x38]
lea ecx, [esp + 0x74]
push edi
mov dword [esp + 0x20], eax
lea eax, [esp + 0x20]
push 4
push eax
call fcn.00531e36
lea eax, [esp + 0x24]
push eax
lea ecx, [esp + 0xa0]
call fcn.00441a4a
movzx edi, word [esp + 0x24]
lea ecx, [esp + 0x74]
mov eax, edi
push 0
mov dword [esp + 0x20], eax
lea eax, [esp + 0x20]
push 2
push eax
call fcn.00531e36
mov eax, edi
cdq
mov ecx, edx
mov dword [esp + 0x34], eax
push ecx
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0xc0]
add ecx, dword [esp + 0xa4]
push eax
push ecx
lea ecx, [esp + 0x80]
call fcn.00531e36
push 0x10
lea ecx, [esp + 0x78]
call fcn.0048b4ec
push 1
push dword [esp + 0x20]
lea ecx, [esp + 0xa4]
mov esi, eax
push dword [esp + 0x3c]
call fcn.0053231b
lea edx, [edi + 0x1b]
add edx, esi
lea ecx, [esp + 0x151]
call fcn.00532a96
mov esi, dword [esp + 0x3c]
push 0
push ecx
push ecx
mov ecx, dword [esi]
mov dword [esp + 0x159], eax
mov eax, dword [esp + 0x98]
push eax
mov dword [esp + 0x50], eax
lea eax, [esp + 0x15c]
push eax
push dword [ebx + 0x34]
movzx eax, word [ebx + 0xc]
push dword [ebx + 0x30]
push eax
push dword [ebx + 8]
push dword [ebx + 4]
push 0x70000001
call fcn.0044983f
test al, al
je 0x48ba17
mov eax, dword [esi + 4]
mov ecx, dword [esp + 0x34]
add dword [eax + 0x2a0], ecx
mov ecx, dword [esp + 0x1c]
adc dword [eax + 0x2a4], ecx
mov edi, dword [esp + 0x20]
add edi, dword [esp + 0x40]
push dword [ebx + 8]
mov ecx, dword [esi]
mov dword [esp + 0x24], edi
call fcn.00448507
test al, al
jne 0x48ba56
mov eax, dword [esi + 4]
add dword [eax + 0x370], 0xffffffff
adc dword [eax + 0x374], 0xffffffff
cmp dword [eax + 0x374], 0
jl 0x48ba72
jg 0x48ba56
cmp dword [eax + 0x370], 0
jbe 0x48ba72
mov byte [esp + 0x960], 3
mov eax, dword [esp + 0x18]
inc eax
mov dword [esp + 0x18], eax
cmp eax, dword [ebp + 0x14]
jl 0x48b83c
jmp 0x48ba7a
mov byte [esp + 0x960], 3
mov eax, dword [esi + 4]
cmp dword [eax + 0x360], 1
jne 0x48bac2
push dword [ebx + 8]
mov ecx, dword [esi]
call fcn.00448507
test al, al
jne 0x48bac2
mov ecx, dword [esi + 4]
mov eax, dword [ebx + 8]
mov esi, dword [ecx + 0xb0]
mov edx, dword [ecx + 0xac]
jmp 0x48bab2
mov ecx, dword [edx]
cmp dword [ecx + 0x14], eax
je 0x48bab6
add edx, 4
cmp edx, esi
jne 0x48baa8
cmp edx, esi
je 0x48bac2
mov ecx, dword [edx]
push edi
call fcn.004a5514
mov ecx, dword [esp + 0x958]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x940]
xor ecx, esp
call fcn.0055daac
mov esp, ebp
pop ebp
ret 0x10