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

Disassembly:
sub esp, 0x118
push ebx
push ebp
mov ebp, ecx
mov eax, dword [ebp + 0x454]
xor ebx, ebx
cmp eax, ebx
je 0x4f56c1
push edi
push 1
push 0xd1
call fcn.00619800
mov edx, dword [eax]
push 1
mov ecx, eax
call dword [edx + 0x54]
mov ecx, dword [ebp + 0x454]
call fcn.006392d0
xor eax, eax
mov dword [esp + 0x15], eax
mov dword [esp + 0x19], eax
mov dword [esp + 0x1d], eax
mov dword [esp + 0x21], eax
mov dword [esp + 0x25], eax
mov dword [esp + 0x29], eax
mov dword [esp + 0x2d], eax
mov word [esp + 0x31], ax
xor edi, edi
mov byte [esp + 0xf], bl
mov byte [esp + 0x14], bl
mov byte [esp + 0x33], al
mov dword [esp + 0x10], edi
call fcn.00573f60
mov ecx, eax
call fcn.005720c0
test eax, eax
jle 0x4f56a6
push esi
push 0x20
lea ecx, [esp + 0x7c]
push ebx
push ecx
call fcn.0065c670
push 0x21
lea edx, [esp + 0xac]
push ebx
push edx
call fcn.0065c670
push 0x20
lea eax, [esp + 0xe1]
push ebx
push eax
call fcn.0065c670
add esp, 0x24
lea ecx, [esp + 0x78]
push ecx
push edi
mov dword [esp + 0xc5], ebx
mov dword [esp + 0xc9], ebx
mov dword [esp + 0xa0], ebx
call fcn.00573f60
mov ecx, eax
call fcn.00572c30
test al, al
je 0x4f5686
mov ecx, dword [ebp + 0x454]
push 0xffffffffffffffff
push ebx
push 0x6fe416
call fcn.00639650
push 0xa
lea edx, [esp + 0x1c]
lea eax, [edi + 1]
push edx
push eax
call fcn.0065f787
mov ecx, dword [ebp + 0x454]
mov eax, dword [ecx]
add esp, 0xc
call dword [eax + 0x6c]
push ebx
push 0x2f
lea ecx, [esp + 0x20]
push ecx
mov ecx, dword [ebp + 0x454]
mov esi, eax
push ebx
dec esi
push esi
call fcn.00454470
mov ecx, dword [ebp + 0x454]
push ebx
push esi
call fcn.00639350
cmp eax, ebx
je 0x4f538c
mov dword [eax + 0x100], 0xffffff00
mov eax, dword [eax + 0x114]
cmp eax, ebx
je 0x4f538c
mov dword [eax + 0x100], 0xffffffff
mov ecx, dword [ebp + 0x454]
push ebx
push 0x80
lea edx, [esp + 0xa4]
push edx
push 1
push esi
call fcn.00454470
cmp edi, ebx
jne 0x4f53ca
mov ecx, dword [ebp + 0x454]
push 1
push esi
call fcn.00639350
cmp eax, ebx
je 0x4f542c
mov dword [eax + 0x100], 0xff9932cc
jmp 0x4f5418
cmp edi, 1
jl 0x4f53f2
cmp edi, 2
jg 0x4f53f2
mov ecx, dword [ebp + 0x454]
push 1
push esi
call fcn.00639350
cmp eax, ebx
je 0x4f542c
mov dword [eax + 0x100], 0xff00ff00
jmp 0x4f5418
cmp edi, 3
jl 0x4f542c
cmp edi, 9
jg 0x4f542c
mov ecx, dword [ebp + 0x454]
push 1
push esi
call fcn.00639350
cmp eax, ebx
je 0x4f542c
mov dword [eax + 0x100], 0xffffd700
mov eax, dword [eax + 0x114]
cmp eax, ebx
je 0x4f542c
mov dword [eax + 0x100], 0xffffffff
xor eax, eax
mov dword [esp + 0x59], eax
mov dword [esp + 0x5d], eax
mov dword [esp + 0x61], eax
mov dword [esp + 0x65], eax
mov dword [esp + 0x69], eax
lea ecx, [esp + 0x78]
push ecx
mov dword [esp + 0x71], eax
lea edx, [esp + 0x5c]
mov dword [esp + 0x75], eax
push 0x6fec40
push edx
mov byte [esp + 0x64], bl
mov byte [esp + 0x81], al
call fcn.0065c60e
mov ecx, dword [ebp + 0x454]
add esp, 0xc
push ebx
push 0x3c
lea eax, [esp + 0x60]
push eax
push 2
push esi
call fcn.00454470
mov ecx, dword [ebp + 0x454]
push 2
push esi
call fcn.00639350
cmp eax, ebx
je 0x4f54b2
mov dword [eax + 0x100], 0xffffff00
mov eax, dword [eax + 0x114]
cmp eax, ebx
je 0x4f54b2
mov dword [eax + 0x100], 0xffffffff
cmp edi, ebx
jne 0x4f54d4
mov ecx, dword [ebp + 0x454]
push 2
push esi
call fcn.00639350
cmp eax, ebx
je 0x4f5536
mov dword [eax + 0x100], 0xff9932cc
jmp 0x4f5522
cmp edi, 1
jl 0x4f54fc
cmp edi, 2
jg 0x4f54fc
mov ecx, dword [ebp + 0x454]
push 2
push esi
call fcn.00639350
cmp eax, ebx
je 0x4f5536
mov dword [eax + 0x100], 0xff00ff00
jmp 0x4f5522
cmp edi, 3
jl 0x4f5536
cmp edi, 9
jg 0x4f5536
mov ecx, dword [ebp + 0x454]
push 2
push esi
call fcn.00639350
cmp eax, ebx
je 0x4f5536
mov dword [eax + 0x100], 0xffffd700
mov eax, dword [eax + 0x114]
cmp eax, ebx
je 0x4f5536
mov dword [eax + 0x100], 0xffffffff
mov edx, dword [esp + 0xbd]
xor ecx, ecx
mov dword [esp + 0x39], ecx
mov dword [esp + 0x3d], ecx
mov dword [esp + 0x41], ecx
mov dword [esp + 0x45], ecx
mov dword [esp + 0x49], ecx
push edx
mov dword [esp + 0x51], ecx
lea eax, [esp + 0x3c]
mov dword [esp + 0x55], ecx
push 0x700108
push eax
mov byte [esp + 0x44], bl
mov byte [esp + 0x61], cl
call fcn.0065c60e
add esp, 0xc
push ebx
push 0x53
lea ecx, [esp + 0x40]
push ecx
mov ecx, dword [ebp + 0x454]
push 3
push esi
call fcn.00454470
cmp edi, ebx
jne 0x4f55ae
mov ecx, dword [ebp + 0x454]
push 3
push esi
call fcn.00639350
cmp eax, ebx
je 0x4f5610
mov dword [eax + 0x100], 0xff9932cc
jmp 0x4f55fc
cmp edi, 1
jl 0x4f55d6
cmp edi, 2
jg 0x4f55d6
mov ecx, dword [ebp + 0x454]
push 3
push esi
call fcn.00639350
cmp eax, ebx
je 0x4f5610
mov dword [eax + 0x100], 0xff00ff00
jmp 0x4f55fc
cmp edi, 3
jl 0x4f5610
cmp edi, 9
jg 0x4f5610
mov ecx, dword [ebp + 0x454]
push 3
push esi
call fcn.00639350
cmp eax, ebx
je 0x4f5610
mov dword [eax + 0x100], 0xffffd700
mov eax, dword [eax + 0x114]
cmp eax, ebx
je 0x4f5610
mov dword [eax + 0x100], 0xffffffff
mov edx, dword [0x77da48]
mov eax, dword [edx + 0x458]
mov ecx, dword [esp + 0x98]
cmp ecx, dword [eax + 0x11fc]
jne 0x4f5686
xor eax, eax
mov byte [esp + 0xe8], bl
mov ecx, 0xf
lea edi, [esp + 0xe9]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov eax, dword [esp + 0x14]
inc eax
push eax
lea edx, [esp + 0xec]
push 0x70e618
push edx
mov byte [esp + 0x1f], 1
call fcn.0065c60e
add esp, 0xc
push 1
push 0xd1
mov ecx, ebp
call fcn.00619800
mov edx, dword [eax]
lea ecx, [esp + 0xe8]
push ecx
mov ecx, eax
call dword [edx + 0x64]
mov edi, dword [esp + 0x14]
inc edi
mov dword [esp + 0x14], edi
call fcn.00573f60
mov ecx, eax
call fcn.005720c0
cmp edi, eax
jl 0x4f52b5
cmp byte [esp + 0x13], bl
pop esi
jne 0x4f56c0
push 1
push 0xd1
mov ecx, ebp
call fcn.00619800
mov edx, dword [eax]
push 0x70e600
mov ecx, eax
call dword [edx + 0x64]
pop edi
pop ebp
pop ebx
add esp, 0x118
ret