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

Disassembly:
push 0xffffffffffffffff
push 0x54ffd6
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x80
mov edx, dword [esp + 0x90]
push ebx
push ebp
push esi
mov esi, ecx
lea ebp, [edx + edx*4]
shl ebp, 2
mov eax, dword [esi + 8]
xor ebx, ebx
push edi
mov dword [esp + 0x24], ebp
mov ecx, dword [eax + ebp + 0xb8]
xor eax, eax
mov dword [esp + 0x28], ecx
mov dword [esp + 0x7c], 0x555640
mov dword [esp + 0x80], ebx
mov dword [esp + 0x8c], ebx
mov dword [esp + 0x88], ebx
mov dword [esp + 0x84], eax
xor edi, edi
cmp ecx, ebx
mov dword [esp + 0x98], ebx
jle 0x42f8e3
lea ecx, [edx + edx*4 + 0x2d]
shl ecx, 2
mov dword [esp + 0x38], ecx
jmp 0x42f8ad
mov eax, dword [esp + 0x84]
mov ecx, dword [esp + 0x38]
mov edx, dword [esi + 8]
mov dword [esp + 0x34], eax
inc eax
push 0xffffffffffffffff
mov ecx, dword [ecx + edx]
push eax
mov ebx, dword [ecx + edi*4]
lea ecx, [esp + 0x84]
call fcn.00404830
mov edx, dword [esp + 0x80]
mov eax, dword [esp + 0x34]
inc edi
mov dword [edx + eax*4], ebx
mov eax, dword [esp + 0x28]
cmp edi, eax
jl 0x42f8a2
xor ebx, ebx
mov ecx, dword [esi + 8]
push 0xffffffffffffffff
push ebx
lea ecx, [ecx + ebp + 0xb0]
call fcn.00404830
mov edi, 0x555640
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x30], ebx
mov dword [esp + 0x38], ebx
mov dword [esp + 0x34], ebx
mov dword [esp + 0x54], edi
mov dword [esp + 0x58], ebx
mov dword [esp + 0x64], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x5c], ebx
mov dword [esp + 0x68], edi
mov dword [esp + 0x6c], ebx
mov dword [esp + 0x78], ebx
mov dword [esp + 0x74], ebx
mov dword [esp + 0x70], ebx
mov dword [esp + 0x40], edi
mov dword [esp + 0x44], ebx
mov dword [esp + 0x50], ebx
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x48], ebx
mov eax, dword [esp + 0x84]
mov byte [esp + 0x98], 3
cmp eax, ebx
mov dword [esp + 0x28], eax
mov dword [esp + 0x14], ebx
jle 0x42fbec
mov edx, dword [esp + 0x80]
mov eax, dword [esp + 0x14]
mov ecx, dword [esi + 0xc]
mov edi, dword [edx + eax*4]
push edi
push ecx
mov ecx, esi
call fcn.00432070
cmp eax, 1
jne 0x42f9a3
mov eax, dword [esp + 0x48]
push 0xffffffffffffffff
mov ebx, eax
inc eax
push eax
lea ecx, [esp + 0x48]
call fcn.00404830
mov edx, dword [esp + 0x44]
mov dword [edx + ebx*4], edi
jmp 0x42fbd0
cmp dword [esp + 0x14], ebx
jne 0x42f9fb
mov eax, dword [esp + 0xa0]
mov ecx, dword [esi + 0xc]
push eax
push edi
push ecx
mov ecx, esi
call fcn.004320f0
test eax, eax
jne 0x42f9fb
mov edx, dword [esi + 0xc]
push edi
push edx
mov ecx, esi
call fcn.004324d0
mov dword [esp + 0x2c], eax
mov eax, dword [esi + 0xc]
cmp eax, 2
je 0x42f9e3
cmp eax, 3
je 0x42f9e3
cmp eax, 4
jne 0x42f9fb
push edi
mov ecx, esi
call fcn.00432430
push edi
mov ecx, esi
mov dword [esp + 0x34], eax
call fcn.00432480
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0xa0]
push edi
push eax
mov ecx, esi
call fcn.0042f7e0
cmp eax, 1
jne 0x42fbd2
mov ecx, dword [esp + 0xa0]
mov edx, dword [esi + 0xc]
push ecx
push edi
push edx
mov ecx, esi
call fcn.004320f0
test eax, eax
jne 0x42fb73
cmp dword [esp + 0x14], ebx
jle 0x42fb49
mov eax, dword [esi + 0xc]
push edi
push eax
mov ecx, esi
call fcn.004324d0
mov dword [esp + 0x3c], eax
mov eax, dword [esi + 0xc]
cmp eax, 2
je 0x42fa5c
cmp eax, 3
je 0x42fa5c
cmp eax, 4
jne 0x42fa72
push edi
mov ecx, esi
call fcn.00432430
push edi
mov ecx, esi
mov ebx, eax
call fcn.00432480
mov dword [esp + 0x34], eax
mov ecx, dword [esp + 0x3c]
mov eax, dword [esp + 0x2c]
cmp ecx, eax
jne 0x42fb2a
cmp ebx, dword [esp + 0x30]
jne 0x42fb2a
mov eax, dword [esi + 0xc]
cmp eax, 2
je 0x42facb
cmp eax, 3
je 0x42facb
cmp eax, 4
je 0x42facb
mov edx, dword [esi + 8]
push 0xffffffffffffffff
mov ebx, dword [edx + ebp + 0xb8]
lea ebp, [edx + ebp + 0xb0]
mov ecx, ebp
lea eax, [ebx + 1]
push eax
call fcn.00404830
mov ecx, dword [ebp + 4]
mov ebp, dword [esp + 0x24]
mov dword [ecx + ebx*4], edi
jmp 0x42fbd0
mov edx, dword [esp + 0x34]
mov eax, dword [esp + 0x38]
push edx
push eax
mov ecx, esi
call fcn.00432270
cmp eax, 1
jne 0x42fb0e
mov ecx, dword [esi + 8]
push 0xffffffffffffffff
mov ebx, dword [ecx + ebp + 0xb8]
lea ebp, [ecx + ebp + 0xb0]
mov ecx, ebp
lea edx, [ebx + 1]
push edx
call fcn.00404830
mov eax, dword [ebp + 4]
mov ebp, dword [esp + 0x24]
mov dword [eax + ebx*4], edi
jmp 0x42fbd0
mov eax, dword [esp + 0x5c]
push 0xffffffffffffffff
mov ebx, eax
inc eax
push eax
lea ecx, [esp + 0x5c]
call fcn.00404830
mov ecx, dword [esp + 0x58]
jmp 0x42fbcd
mov eax, dword [esp + 0x5c]
push 0xffffffffffffffff
mov ebx, eax
inc eax
push eax
lea ecx, [esp + 0x5c]
call fcn.00404830
mov edx, dword [esp + 0x58]
mov dword [edx + ebx*4], edi
jmp 0x42fbd0
mov eax, dword [esi + 8]
push 0xffffffffffffffff
mov ebx, dword [eax + ebp + 0xb8]
lea ebp, [eax + ebp + 0xb0]
lea ecx, [ebx + 1]
push ecx
mov ecx, ebp
call fcn.00404830
mov edx, dword [ebp + 4]
mov ebp, dword [esp + 0x24]
mov dword [edx + ebx*4], edi
jmp 0x42fbd0
mov eax, dword [esi + 0xc]
push edi
push eax
mov ecx, esi
call fcn.00432070
cmp eax, 1
jne 0x42fb9d
mov eax, dword [esp + 0x48]
push 0xffffffffffffffff
mov ebx, eax
inc eax
push eax
lea ecx, [esp + 0x48]
call fcn.00404830
mov ecx, dword [esp + 0x44]
jmp 0x42fbcd
mov edx, dword [esp + 0xa0]
mov eax, dword [esi + 0xc]
push edx
push edi
push eax
mov ecx, esi
call fcn.004320f0
cmp eax, 1
jne 0x42fbd2
mov eax, dword [esp + 0x70]
push 0xffffffffffffffff
mov ebx, eax
inc eax
push eax
lea ecx, [esp + 0x70]
call fcn.00404830
mov ecx, dword [esp + 0x6c]
mov dword [ecx + ebx*4], edi
xor ebx, ebx
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x28]
inc eax
cmp eax, ecx
mov dword [esp + 0x14], eax
jl 0x42f965
mov edi, 0x555640
lea ecx, [esp + 0x20]
call fcn.0048140e
lea ecx, [esp + 0x1c]
mov byte [esp + 0x98], 4
call fcn.0048140e
lea ecx, [esp + 0x18]
mov byte [esp + 0x98], 5
call fcn.0048140e
lea ecx, [esp + 0x10]
mov byte [esp + 0x98], 6
call fcn.0048140e
mov eax, dword [esp + 0x48]
mov byte [esp + 0x98], 7
cmp eax, ebx
jle 0x42fcb0
lea edx, [esp + 0x20]
push 0x56d964
push edx
call fcn.00481408
mov eax, dword [esp + 0x50]
add esp, 8
xor edi, edi
cmp eax, ebx
jle 0x42fc91
dec eax
cmp edi, eax
mov eax, dword [esp + 0x44]
mov ecx, dword [eax + edi*4]
push ecx
jne 0x42fc68
push 0x56d260
jmp 0x42fc6d
push 0x56d960
lea edx, [esp + 0x18]
push edx
call fcn.00481408
add esp, 0xc
lea eax, [esp + 0x10]
lea ecx, [esp + 0x20]
push eax
call fcn.00481648
mov eax, dword [esp + 0x48]
inc edi
cmp edi, eax
jl 0x42fc54
push 0x56d94c
lea ecx, [esp + 0x24]
call fcn.004814c2
mov ecx, dword [esp + 0x20]
push ebx
push ebx
push ecx
call fcn.004813d2
mov edi, 0x555640
cmp dword [esp + 0x5c], ebx
jle 0x42fd2e
lea edx, [esp + 0x18]
push 0x56d964
push edx
call fcn.00481408
mov eax, dword [esp + 0x64]
add esp, 8
xor edi, edi
cmp eax, ebx
jle 0x42fd0f
dec eax
cmp edi, eax
mov eax, dword [esp + 0x58]
mov ecx, dword [eax + edi*4]
push ecx
jne 0x42fce6
push 0x56d260
jmp 0x42fceb
push 0x56d960
lea edx, [esp + 0x18]
push edx
call fcn.00481408
add esp, 0xc
lea eax, [esp + 0x10]
lea ecx, [esp + 0x18]
push eax
call fcn.00481648
mov eax, dword [esp + 0x5c]
inc edi
cmp edi, eax
jl 0x42fcd2
push 0x56d91c
lea ecx, [esp + 0x1c]
call fcn.004814c2
mov ecx, dword [esp + 0x18]
push ebx
push ebx
push ecx
call fcn.004813d2
mov edi, 0x555640
cmp dword [esp + 0x70], ebx
jle 0x42fdac
lea edx, [esp + 0x1c]
push 0x56d964
push edx
call fcn.00481408
mov eax, dword [esp + 0x78]
add esp, 8
xor edi, edi
cmp eax, ebx
jle 0x42fd8d
dec eax
cmp edi, eax
mov eax, dword [esp + 0x6c]
mov ecx, dword [eax + edi*4]
push ecx
jne 0x42fd64
push 0x56d260
jmp 0x42fd69
push 0x56d960
lea edx, [esp + 0x18]
push edx
call fcn.00481408
add esp, 0xc
lea eax, [esp + 0x10]
lea ecx, [esp + 0x1c]
push eax
call fcn.00481648
mov eax, dword [esp + 0x70]
inc edi
cmp edi, eax
jl 0x42fd50
push 0x56d904
lea ecx, [esp + 0x20]
call fcn.004814c2
mov ecx, dword [esp + 0x1c]
push ebx
push ebx
push ecx
call fcn.004813d2
mov edi, 0x555640
mov eax, dword [esi + 0xc]
cmp eax, ebx
jne 0x42fdc7
mov edx, dword [esp + 0xa0]
mov ecx, esi
push edx
call fcn.0041e400
jmp 0x42fe47
cmp eax, 1
jne 0x42fddd
mov eax, dword [esp + 0xa0]
mov ecx, esi
push eax
call fcn.00430cf0
jmp 0x42fe47
cmp eax, 2
jne 0x42fdf4
mov ecx, dword [esp + 0xa0]
push ecx
push ebx
mov ecx, esi
call fcn.004241d0
jmp 0x42fe47
cmp eax, 3
jne 0x42fe0c
mov edx, dword [esp + 0xa0]
mov ecx, esi
push edx
push 1
call fcn.004241d0
jmp 0x42fe47
cmp eax, 4
jne 0x42fe24
mov eax, dword [esp + 0xa0]
mov ecx, esi
push eax
push 2
call fcn.004241d0
jmp 0x42fe47
cmp eax, 5
jne 0x42fe33
mov ecx, dword [esp + 0xa0]
push ecx
jmp 0x42fe40
cmp eax, 6
jne 0x42fe47
mov edx, dword [esp + 0xa0]
push edx
mov ecx, esi
call fcn.0042d410
lea ecx, [esp + 0x10]
mov byte [esp + 0x98], 6
call fcn.004813ba
lea ecx, [esp + 0x18]
mov byte [esp + 0x98], 5
call fcn.004813ba
lea ecx, [esp + 0x1c]
mov byte [esp + 0x98], 4
call fcn.004813ba
lea ecx, [esp + 0x20]
mov byte [esp + 0x98], 3
call fcn.004813ba
mov eax, dword [esp + 0x44]
mov dword [esp + 0x40], edi
cmp eax, ebx
je 0x42fea0
push eax
call fcn.004812ac
add esp, 4
mov eax, dword [esp + 0x6c]
mov esi, 0x555668
cmp eax, ebx
mov dword [esp + 0x40], esi
mov dword [esp + 0x68], edi
je 0x42febe
push eax
call fcn.004812ac
add esp, 4
mov eax, dword [esp + 0x58]
mov dword [esp + 0x68], esi
cmp eax, ebx
mov dword [esp + 0x54], edi
je 0x42fed7
push eax
call fcn.004812ac
add esp, 4
mov eax, dword [esp + 0x80]
mov dword [esp + 0x7c], edi
mov dword [esp + 0x54], esi
pop edi
pop esi
pop ebp
cmp eax, ebx
pop ebx
je 0x42fef7
push eax
call fcn.004812ac
add esp, 4
mov ecx, dword [esp + 0x80]
mov eax, 1
mov dword fs:[0], ecx
add esp, 0x8c
ret 4