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

Disassembly:
mov eax, 0xa8
call fcn.00697340
push ebx
xor ebx, ebx
mov eax, 0x6b9578
push ebp
push esi
push edi
mov dword [esp + 0x28], ecx
mov dword [esp + 0x54], eax
mov dword [esp + 0x60], eax
mov dword [esp + 0x70], eax
mov dword [esp + 0x80], eax
mov dword [esp + 0x90], eax
mov esi, edx
xor eax, eax
mov dword [esp + 0x58], ebx
mov dword [esp + 0x5c], ebx
mov dword [esp + 0x64], ebx
mov dword [esp + 0x68], ebx
mov dword [esp + 0x74], ebx
mov dword [esp + 0x78], ebx
mov dword [esp + 0x84], ebx
mov dword [esp + 0x88], ebx
mov dword [esp + 0x94], ebx
mov dword [esp + 0x98], ebx
mov ecx, 0x1a
lea edi, [esp + 0x50]
mov dword [esp + 0x14], esi
mov dword [esp + 0x24], ebx
mov dword [esp + 0x1c], ebx
rep stosd dword es:[edi], eax
mov dword [esp + 0x10], ebx
call fcn.0053e928
mov ecx, dword [esi + 4]
mov dword [esp + 0x40], eax
push esi
lea eax, [esp + 0x54]
push eax
call fcn.00541d0c
mov ecx, dword [esi + 4]
push 4
push ecx
xor edx, edx
lea ecx, [esp + 0x58]
call fcn.00432670
mov edx, dword [esp + 0x58]
mov eax, dword [esp + 0x94]
cmp eax, ebx
mov ebp, dword [edx + 0xc]
mov dword [esp + 0x3c], ebp
je 0x42081c
mov ecx, dword [esi + 4]
mov edx, dword [ecx + 0x36]
cmp dword [edx + 0x4c], 2
jne 0x42080d
mov eax, dword [eax + 0xc]
push eax
mov ecx, ebp
call fcn.004083e0
jmp 0x420818
mov ecx, dword [eax + 0xc]
push ecx
mov ecx, ebp
call fcn.00408f30
mov dword [esp + 0x10], eax
mov ecx, dword [ebp + 0x59]
call fcn.004fbdf0
mov eax, dword [esp + 0x10]
xor edi, edi
cmp eax, ebx
je 0x4208b8
mov ecx, ebp
call fcn.004013d0
mov esi, eax
push ebx
mov ecx, esi
mov dword [esp + 0x28], esi
call fcn.0050916c
test byte [esi + 0x10], 2
jne 0x420859
mov edx, dword [esi]
push 0xe6
mov ecx, esi
call dword [edx + 0x10]
mov ecx, dword [esi + 8]
push 0xe6
call fcn.004f2d8c
mov edi, eax
cmp edi, ebx
je 0x420a10
test byte [edi + 0x10], 2
push ebx
push 0x39
jne 0x420882
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 8]
jmp 0x42088a
mov ecx, dword [edi + 8]
call fcn.004f3000
mov ecx, dword [eax + 8]
mov edx, dword [ecx]
mov eax, dword [esp + 0x10]
cmp edx, dword [eax + 0x31]
je 0x4208b8
test byte [esi + 0x10], 2
jne 0x4208a9
mov eax, dword [edi + 4]
mov edx, dword [esi]
push eax
mov ecx, esi
call dword [edx + 0x10]
mov ecx, dword [esi + 8]
push edi
call fcn.004f2b58
mov edi, eax
cmp edi, ebx
jne 0x420870
cmp edi, ebx
je 0x420a10
push 0x31
mov ecx, edi
call fcn.00508de8
test eax, eax
jle 0x420a10
push 0x31
mov ecx, edi
call fcn.00508de8
mov ecx, eax
imul ecx, ecx, 0xe
mov dword [esp + 0x20], eax
call fcn.004dbdb8
mov dword [esp + 0x18], eax
test byte [edi + 0x10], 2
jne 0x4208fb
mov edx, dword [edi]
push 0x31
mov ecx, edi
call dword [edx + 0x10]
mov ecx, dword [edi + 8]
push 0x31
call fcn.004f2d8c
mov esi, eax
test byte [edi + 0x10], 2
mov dword [esp + 0x10], esi
jne 0x42091a
mov eax, dword [edi]
push 0x3a
mov ecx, edi
call dword [eax + 0x10]
mov ecx, dword [edi + 8]
push 0x3a
call fcn.004f2d8c
cmp esi, ebx
mov ebp, eax
je 0x420a08
mov esi, dword [esp + 0x18]
mov ecx, dword [esp + 0x10]
mov edx, dword [ecx + 8]
mov ax, word [edx]
cmp ax, 0xd
jne 0x42095d
mov ecx, dword [esp + 0x3c]
mov word [esi], ax
mov eax, dword [ebp + 8]
mov eax, dword [eax]
push eax
call fcn.00408490
test eax, eax
mov dword [esi + 2], eax
je 0x4209b6
jmp 0x4209b2
cmp ax, 0xc
jne 0x42097e
mov word [esi], ax
mov ecx, dword [ebp + 8]
mov eax, dword [ecx]
mov ecx, dword [esp + 0x3c]
push eax
call fcn.00408300
test eax, eax
mov dword [esi + 2], eax
je 0x4209b6
jmp 0x4209b2
cmp ax, 0x49
jne 0x42098b
mov word [esi], 0x26
jmp 0x4209b2
cmp ax, 0x4a
jne 0x420998
mov word [esi], 0x27
jmp 0x4209aa
cmp ax, 0x48
jne 0x4209a5
mov word [esi], 0x18
jmp 0x4209b2
mov word [esi], 0x28
mov dword [esp + 0x1c], 1
inc ebx
add esi, 0xe
test byte [edi + 0x10], 2
jne 0x4209cb
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 4]
mov edx, dword [edi]
push ecx
mov ecx, edi
call dword [edx + 0x10]
mov edx, dword [esp + 0x10]
mov ecx, dword [edi + 8]
push edx
call fcn.004f2b58
mov dword [esp + 0x10], eax
test byte [edi + 0x10], 2
jne 0x4209ed
mov ecx, dword [ebp + 4]
mov eax, dword [edi]
push ecx
mov ecx, edi
call dword [eax + 0x10]
mov ecx, dword [edi + 8]
push ebp
call fcn.004f2b58
mov ebp, eax
mov eax, dword [esp + 0x10]
test eax, eax
jne 0x420932
test ebx, ebx
jne 0x420a37
mov eax, dword [esp + 0x20]
test eax, eax
jne 0x420a26
mov ecx, 0xe
mov dword [esp + 0x20], 1
call fcn.004dbdb8
mov dword [esp + 0x18], eax
mov edx, dword [esp + 0x18]
mov word [edx], 0x28
mov dword [esp + 0x1c], 1
mov ecx, dword [esp + 0x24]
test ecx, ecx
je 0x420a44
call fcn.00509150
mov eax, dword [esp + 0x3c]
mov ecx, dword [eax + 0x59]
call fcn.004fbdd0
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x420d36
push 0
lea ecx, [esp + 0x48]
call fcn.0050ab48
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx]
mov edx, dword [eax + 0x36]
mov cx, word [edx + 0xa]
call fcn.0054169c
test eax, eax
mov dword [esp + 0x24], eax
je 0x420d2d
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 4]
mov ecx, dword [eax + 0xf]
push 4
push eax
push ecx
mov ecx, dword [esp + 0x30]
xor edx, edx
mov dx, word [ecx]
lea ecx, [esp + 0x4c]
push edx
call fcn.0053f428
test ax, ax
je 0x420d1a
mov edi, dword [esp + 0x14]
mov ecx, dword [edi + 4]
mov ecx, dword [ecx + 0xf]
mov edx, dword [ecx]
push 0
push ecx
push eax
call dword [edx + 0x40]
push 0x3ff
mov esi, eax
mov eax, dword [edi + 4]
push 4
push eax
mov ecx, esi
call fcn.004f7b54
mov ecx, esi
call fcn.0051d848
test eax, eax
mov dword [esp + 0x34], eax
je 0x420d1a
lea esp, [esp]
mov ecx, dword [esp + 0x34]
mov edx, dword [ecx]
call dword [edx + 0x78]
cmp eax, 0x17
jne 0x420d05
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 4]
mov eax, dword [ecx + 0xf]
mov ecx, dword [esp + 0x34]
mov edx, dword [ecx]
push eax
push 0xc0f
call dword [edx + 0x64]
mov ecx, eax
call fcn.0051d848
xor ecx, ecx
cmp eax, ecx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x2c], ecx
je 0x420d05
mov eax, dword [esp + 0x2c]
xor ebx, ebx
cmp eax, ebx
jne 0x420b59
mov ecx, dword [esp + 0x1c]
push ebx
push ebx
push 0x101b
lea eax, [esp + 0x50]
push eax
call fcn.004f80c8
jmp 0x420b71
lea ecx, [esp + 0x38]
push ecx
push 0xa
lea ecx, [esp + 0x4c]
mov dword [esp + 0x40], 1
call fcn.0050c9a8
mov edx, dword [esp + 0x44]
cmp dword [edx], 2
je 0x420ce8
mov ecx, dword [esp + 0x1c]
push ebx
push ebx
push 0xc1f
lea eax, [esp + 0x50]
push eax
call fcn.004f80c8
mov ecx, dword [esp + 0x44]
push ecx
mov ecx, dword [esp + 0x40]
call fcn.004083e0
mov ebp, dword [esp + 0x20]
cmp ebp, ebx
mov edi, eax
mov dword [esp + 0x38], edi
mov dword [esp + 0x30], ebx
jle 0x420c25
mov esi, dword [esp + 0x18]
add esi, 2
lea ebx, [ebx]
mov eax, dword [esi]
cmp edi, eax
je 0x420c81
cmp word [esi - 2], 0xc
jne 0x420be8
test eax, eax
je 0x420be8
mov eax, dword [eax + 0x31]
push eax
mov ecx, edi
call fcn.0043a860
test eax, eax
jne 0x420c81
mov edx, dword [esi + 4]
xor ecx, ecx
test edx, edx
jle 0x420c0d
mov eax, dword [esi + 8]
add eax, 2
cmp edi, dword [eax]
je 0x420c05
inc ecx
add eax, 0xe
cmp ecx, edx
jl 0x420bf7
jmp 0x420c0d
mov dword [esp + 0x30], 1
inc ebx
add esi, 0xe
cmp ebx, ebp
jl 0x420bc0
mov eax, dword [esp + 0x30]
test eax, eax
jne 0x420cf0
mov ebp, dword [esp + 0x20]
xor ebx, ebx
test ebp, ebp
jle 0x420cf0
mov esi, dword [esp + 0x18]
mov ebp, dword [esp + 0x20]
mov edi, dword [esp + 0x38]
jmp 0x420c40
mov eax, dword [esi + 2]
cmp edi, eax
je 0x420c81
cmp word [esi], 0xc
jne 0x420c60
test eax, eax
je 0x420c60
mov eax, dword [eax + 0x31]
push eax
mov ecx, edi
call fcn.0043a860
test eax, eax
jne 0x420c81
mov ax, word [esi]
cmp ax, 0x28
je 0x420c8b
mov ecx, dword [esp + 0x10]
test ecx, ecx
je 0x420c77
cmp ax, 0x27
je 0x420c8b
inc ebx
add esi, 0xe
cmp ebx, ebp
jl 0x420c40
jmp 0x420cf0
mov dword [esp + 0x10], 1
jmp 0x420cf0
mov edx, dword [esp + 0x18]
imul ebx, ebx, 0xe
mov esi, dword [ebx + edx + 6]
add ebx, edx
mov ebp, esi
imul ebp, ebp, 0xe
lea ecx, [ebp + 0xe]
call fcn.004dbdb8
test esi, esi
mov edi, eax
mov dword [esp + 0x30], edi
je 0x420cc6
mov esi, dword [ebx + 0xa]
mov ecx, ebp
mov eax, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, dword [esp + 0x30]
mov ecx, dword [esp + 0x38]
mov word [edi + ebp], 0xd
mov dword [edi + ebp + 2], ecx
mov ecx, dword [ebx + 0xa]
call fcn.004db4f8
mov eax, dword [ebx + 6]
inc eax
mov dword [ebx + 0xa], edi
mov dword [ebx + 6], eax
jmp 0x420cf0
mov dword [esp + 0x2c], 1
mov ecx, dword [esp + 0x1c]
call fcn.004fa1a4
test eax, eax
mov dword [esp + 0x1c], eax
jne 0x420b38
mov ecx, dword [esp + 0x34]
call fcn.004fa1a4
test eax, eax
mov dword [esp + 0x34], eax
jne 0x420af0
mov edx, dword [esp + 0x24]
mov eax, dword [edx + 2]
test eax, eax
mov dword [esp + 0x24], eax
jne 0x420a85
lea ecx, [esp + 0x44]
call fcn.0050ac00
mov eax, dword [esp + 0x20]
test eax, eax
jle 0x420f26
mov ebp, dword [esp + 0x18]
add ebp, 2
mov dword [esp + 0x2c], eax
lea ecx, [ecx]
mov ax, word [ebp - 2]
cmp ax, 0xd
jne 0x420dce
cmp dword [ebp], 0
je 0x420f14
mov ecx, 0x4a
call fcn.004dbdb8
test eax, eax
je 0x420d87
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 4]
push edx
push 0
mov ecx, eax
call fcn.0051dcf4
mov esi, eax
jmp 0x420d89
xor esi, esi
movzx eax, word [0x6edc49]
lea eax, [eax + eax*2]
mov ecx, dword [eax*4 + 0x701828]
push ecx
push 0x1036
mov ecx, esi
call fcn.00509728
mov edx, dword [ebp]
mov eax, dword [edx + 0x35]
mov ecx, dword [eax]
mov edx, dword [ecx + 0x2d]
push edx
push 0x1037
mov ecx, esi
call fcn.00509728
mov edx, dword [esp + 0x14]
mov ecx, esi
call dword [esp + 0x28]
jmp 0x420f14
cmp ax, 0xc
jne 0x420e16
cmp dword [ebp], 0
je 0x420f14
mov ecx, 0x4a
call fcn.004dbdb8
test eax, eax
je 0x420e08
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 4]
push edx
push 0
mov ecx, eax
call fcn.0051dcf4
mov esi, eax
movzx eax, word [0x6edc38]
jmp 0x420d90
movzx eax, word [0x6edc38]
xor esi, esi
jmp 0x420d90
cmp ax, 0x26
jne 0x420e4d
mov ecx, 0x4a
call fcn.004dbdb8
test eax, eax
je 0x420e44
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 4]
push edx
push 0
mov ecx, eax
call fcn.0051dcf4
mov esi, eax
mov eax, dword [0x6ecd54]
jmp 0x420e7d
mov eax, dword [0x6ecd54]
xor esi, esi
jmp 0x420e7d
cmp ax, 0x18
jne 0x420e94
mov ecx, 0x4a
call fcn.004dbdb8
test eax, eax
je 0x420e76
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 4]
push edx
push 0
mov ecx, eax
call fcn.0051dcf4
mov esi, eax
jmp 0x420e78
xor esi, esi
mov eax, dword [0x6ecce4]
push eax
push 0x1036
mov ecx, esi
call fcn.00509728
push 0x6c51ec
jmp 0x420db3
mov eax, dword [ebp + 4]
xor edi, edi
test eax, eax
jle 0x420f14
xor ebx, ebx
nop
mov ecx, 0x4a
call fcn.004dbdb8
test eax, eax
je 0x420ec3
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 4]
push edx
push 0
mov ecx, eax
call fcn.0051dcf4
mov esi, eax
jmp 0x420ec5
xor esi, esi
movzx eax, word [0x6edc49]
lea eax, [eax + eax*2]
mov ecx, dword [eax*4 + 0x701828]
push ecx
push 0x1036
mov ecx, esi
call fcn.00509728
mov edx, dword [ebp + 8]
mov eax, dword [edx + ebx + 2]
mov ecx, dword [eax + 0x35]
mov edx, dword [ecx]
mov eax, dword [edx + 0x2d]
push eax
push 0x1037
mov ecx, esi
call fcn.00509728
mov edx, dword [esp + 0x14]
mov ecx, esi
call dword [esp + 0x28]
mov eax, dword [ebp + 4]
inc edi
add ebx, 0xe
cmp edi, eax
jl 0x420ea0
mov eax, dword [esp + 0x2c]
add ebp, 0xe
dec eax
mov dword [esp + 0x2c], eax
jne 0x420d50
mov edi, dword [esp + 0x20]
test edi, edi
jle 0x420f42
mov esi, dword [esp + 0x18]
add esi, 0xa
mov ecx, dword [esi]
call fcn.004db4f8
add esi, 0xe
dec edi
jne 0x420f35
mov ecx, dword [esp + 0x18]
call fcn.004db4f8
mov ecx, dword [esp + 0x40]
call fcn.0053e920
lea ecx, [esp + 0x90]
call fcn.004eda04
lea ecx, [esp + 0x80]
call fcn.004eda04
lea ecx, [esp + 0x70]
call fcn.004eda04
lea ecx, [esp + 0x60]
call fcn.004eda04
lea ecx, [esp + 0x54]
call fcn.004eda04
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xa8
ret