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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x4b18ec
mov eax, dword fs:[0]
push eax
sub esp, 0xb0
push ebx
push esi
push edi
mov eax, dword [0x4dd704]
xor eax, esp
push eax
lea eax, [esp + 0xc0]
mov dword fs:[0], eax
mov edi, ecx
mov dword [esp + 0x18], edi
mov esi, dword [ebp + 0xc]
mov al, byte [esi]
xor ebx, ebx
cmp al, bl
jne 0x48f37e
lea eax, [ebx - 2]
mov ecx, dword [esp + 0xc0]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov al, byte [esi + 8]
cmp al, 0xec
jne 0x48f64b
push 0x1000
mov dword [esp + 0x28], ebx
mov dword [esp + 0x2c], ebx
call fcn.0049badd
mov dword [esp + 0x28], eax
neg eax
sbb eax, eax
and eax, 0x1000
mov dword [esp + 0x2c], eax
push 0x1000
mov dword [esp + 0xd0], ebx
mov dword [esp + 0x24], ebx
mov dword [esp + 0x28], ebx
call fcn.0049badd
mov ecx, eax
add esp, 8
neg ecx
sbb ecx, ecx
and ecx, 0x1000
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x24]
mov byte [esp + 0xc8], 1
cmp ecx, ebx
je 0x48f60b
cmp eax, ebx
je 0x48f61c
mov edx, dword [esp + 0x28]
push edx
push ebx
push ecx
call fcn.0049c630
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x28]
push eax
push ebx
push ecx
call fcn.0049c630
add esp, 0x18
push ebx
lea edx, [esp + 0x28]
push edx
push ebx
push 1
lea ecx, [esp + 0x7c]
call fcn.00474170
push eax
lea ecx, [esp + 0x98]
call fcn.00474420
cmp byte [esp + 0x8c], bl
jne 0x48f46b
lea ecx, [esp + 0x1c]
call fcn.00417bf0
lea ecx, [esp + 0x24]
call fcn.00417bf0
xor eax, eax
mov ecx, dword [esp + 0xc0]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov esi, dword [ebp + 8]
or esi, 0xffffff80
shl esi, 0x18
or esi, dword [ebp + 0x10]
lea eax, [esp + 0x8c]
push esi
lea ecx, [edi + 0x130]
push eax
call fcn.00496ff0
mov edi, eax
cmp edi, ebx
lea ecx, [esp + 0x1c]
jg 0x48f4bd
call fcn.00417bf0
lea ecx, [esp + 0x24]
call fcn.00417bf0
mov eax, edi
mov ecx, dword [esp + 0xc0]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push ebx
push ecx
push ebx
push ebx
lea ecx, [esp + 0x7c]
mov dword [esp + 0x40], ebx
xor edi, edi
call fcn.00474170
push eax
lea ecx, [esp + 0x48]
call fcn.00474420
cmp byte [esp + 0x3c], 0
je 0x48f534
mov ecx, dword [esp + 0x18]
push esi
lea edx, [esp + 0x40]
push edx
add ecx, 0x130
call fcn.00496ff0
test eax, eax
jle 0x48f534
mov edx, dword [esp + 0x1c]
movzx ecx, byte [edx + 0x1a]
and ecx, 0xf
mov cl, byte [edx + ecx*4 + 0x82]
mov eax, 1
shl eax, cl
cmp eax, 0x200
jb 0x48f534
mov ecx, dword [edx]
mov edx, dword [edx + 4]
test edx, edx
ja 0x48f527
test ecx, ecx
jbe 0x48f534
mov edi, eax
mov ebx, ecx
mov dword [esp + 0x30], edx
jmp 0x48f5c1
mov ecx, dword [esp + 0x18]
mov edx, dword [ecx]
mov edx, dword [edx]
push 0x10002
push 0
lea eax, [esp + 0x18]
push eax
call edx
mov esi, dword [eax]
mov dword [esp + 0x18], esi
mov byte [esp + 0xc8], 2
test esi, esi
jne 0x48f56f
lea ecx, [esp + 0x18]
mov byte [esp + 0xc8], 1
call fcn.004733d0
jmp 0x48f5c1
push 0
push esi
call fcn.0048a1b0
mov edi, eax
lea eax, [esp + 0x3c]
push eax
push 0x53495a45
xor ebx, ebx
push 1
push esi
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x50], ebx
call fcn.0043f750
add esp, 0x18
push ebx
push edi
push edx
push eax
call fcn.0049c5c0
mov dword [esp + 0x30], edx
mov edx, dword [esi]
mov edx, dword [edx + 8]
mov ebx, eax
lea eax, [esp + 0x18]
push eax
mov ecx, esi
mov byte [esp + 0xcc], 1
mov dword [esp + 0x1c], esi
call edx
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 0x10]
mov edx, dword [esp + 0x30]
mov eax, dword [esp + 0x24]
push ecx
push edi
push edx
push ebx
push eax
call fcn.00473f70
add esp, 0x14
lea ecx, [esp + 0x1c]
call fcn.00417bf0
lea ecx, [esp + 0x24]
call fcn.00417bf0
mov eax, 0x200
mov ecx, dword [esp + 0xc0]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp eax, ebx
je 0x48f61c
push eax
call fcn.0049ba00
mov ecx, dword [esp + 0x28]
add esp, 4
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
cmp ecx, ebx
je 0x48f631
push ecx
call fcn.0049ba00
add esp, 4
xor eax, eax
mov ecx, dword [esp + 0xc0]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp al, 0xb0
jne 0x48f694
mov al, byte [esi + 2]
cmp al, 0xd5
jne 0x48f6af
mov al, byte [esi + 4]
cmp al, bl
jne 0x48f690
push ebx
push ebx
add esi, 0x10
push esi
call fcn.004742e0
movzx eax, al
add esp, 0xc
neg eax
sbb eax, eax
and eax, 0x201
dec eax
mov ecx, dword [esp + 0xc0]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp al, 0xe0
je 0x48f6bb
or eax, 0xffffffff
mov ecx, dword [esp + 0xc0]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp al, 0xda
je 0x48f6bb
cmp al, 0xd0
je 0x48f6bb
cmp al, 0xd1
jne 0x48f694
push 0x200
mov dword [esp + 0x14], ebx
mov dword [esp + 0x18], ebx
call fcn.0049badd
mov ecx, eax
add esp, 4
neg ecx
sbb ecx, ecx
and ecx, 0x200
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], ecx
mov dword [esp + 0xc8], 3
cmp eax, ebx
jne 0x48f716
lea ecx, [esp + 0x10]
call fcn.00417bf0
xor eax, eax
mov ecx, dword [esp + 0xc0]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push ecx
push ebx
push eax
call fcn.0049c630
add esp, 0xc
push ebx
lea ecx, [esp + 0x14]
push ecx
push 2
lea ecx, [esp + 0x78]
call fcn.004741d0
push eax
lea ecx, [esp + 0x48]
call fcn.00474420
cmp byte [esp + 0x3c], bl
je 0x48f6f3
mov edx, dword [ebp + 8]
or edx, 0xffffff80
shl edx, 0x18
or edx, dword [ebp + 0x10]
lea eax, [esp + 0x3c]
push edx
push eax
lea ecx, [edi + 0x130]
call fcn.00496ff0
mov edi, eax
cmp edi, ebx
jg 0x48f788
lea ecx, [esp + 0x10]
call fcn.00417bf0
mov eax, edi
mov ecx, dword [esp + 0xc0]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov al, byte [esi + 2]
cmp al, 0xd5
jne 0x48f7e0
mov ecx, dword [esp + 0x10]
movzx edx, word [ecx + 1]
sub edx, 0x111
push edx
push pe_nt_image_headers32
add esi, 0x10
push esi
call fcn.004742e0
movzx esi, al
add esp, 0xc
neg esi
sbb esi, esi
and esi, 0x201
lea ecx, [esp + 0x10]
dec esi
call fcn.00417bf0
mov eax, esi
mov ecx, dword [esp + 0xc0]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp al, 0xda
jne 0x48f82c
mov ecx, dword [esp + 0x10]
test byte [ecx], 0xd
setne al
cmp byte [ecx + 5], 0x5a
jbe 0x48f7f6
mov al, 1
cmp al, bl
sete al
movzx ecx, al
push ecx
mov ecx, esi
call fcn.004646c0
lea ecx, [esp + 0x10]
call fcn.00417bf0
mov eax, 0x200
mov ecx, dword [esp + 0xc0]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp al, 0xd0
je 0x48f842
cmp al, 0xd1
je 0x48f842
lea ecx, [esp + 0x10]
call fcn.00417bf0
jmp 0x48f694
mov edx, dword [esp + 0x10]
add esi, 0x10
push esi
push eax
push edx
call fcn.00474d80
add esp, 0xc
lea ecx, [esp + 0x10]
call fcn.00417bf0
mov eax, 0x200
mov ecx, dword [esp + 0xc0]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc