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

Disassembly:
push 0xffffffffffffffff
push 0x41765e
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xf8
mov eax, dword [0x41c0f8]
push ebx
push esi
mov esi, dword [esp + 0x110]
xor ebx, ebx
cmp esi, ebx
mov dword [esp + 0xfc], eax
jne 0x40772e
or eax, 0xffffffff
jmp 0x4079a0
push edi
mov edi, dword [esp + 0x11c]
mov eax, dword [edi + 4]
mov ecx, dword [eax + 4]
push ecx
mov ecx, edi
call fcn.00407250
mov eax, dword [edi + 4]
mov dword [eax + 4], eax
mov eax, dword [edi + 4]
mov dword [edi + 8], ebx
mov dword [eax], eax
mov eax, dword [edi + 4]
mov dword [eax + 8], eax
mov eax, esi
mov dword [esp + 0x14], ebx
mov dword [esp + 0xe0], 0xf
mov dword [esp + 0xdc], ebx
mov byte [esp + 0xcc], 0
lea ecx, [eax + 1]
jmp 0x407780
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x407780
sub eax, ecx
push eax
push esi
lea ecx, [esp + 0xd0]
call fcn.00406930
mov edx, dword [esp + 0xdc]
cmp edx, ebx
mov dword [esp + 0x10c], ebx
jbe 0x4078b2
lea ecx, [ecx]
mov esi, dword [esp + 0xe0]
cmp esi, 0x10
mov eax, dword [esp + 0xcc]
mov ecx, eax
jae 0x4077cc
lea ecx, [esp + 0xcc]
cmp byte [ecx], 0xd
je 0x40780a
cmp esi, 0x10
mov ecx, eax
jae 0x4077df
lea ecx, [esp + 0xcc]
cmp byte [ecx], 0xa
je 0x40780a
cmp esi, 0x10
mov ecx, eax
jae 0x4077f2
lea ecx, [esp + 0xcc]
cmp byte [ecx], 9
je 0x40780a
cmp esi, 0x10
mov ecx, eax
jae 0x407805
lea ecx, [esp + 0xcc]
cmp byte [ecx], 0x20
jne 0x407829
push 1
push ebx
lea ecx, [esp + 0xd0]
call fcn.00406280
mov edx, dword [esp + 0xdc]
cmp edx, ebx
ja 0x4077b0
jmp 0x4078b2
cmp edx, ebx
jbe 0x4078b2
jmp 0x407841
mov eax, dword [esp + 0xcc]
mov esi, dword [esp + 0xe0]
cmp esi, 0x10
mov ecx, eax
jae 0x40784f
lea ecx, [esp + 0xcc]
cmp byte [edx + ecx - 1], 0xd
je 0x407893
cmp esi, 0x10
mov ecx, eax
jae 0x407864
lea ecx, [esp + 0xcc]
cmp byte [edx + ecx - 1], 0xa
je 0x407893
cmp esi, 0x10
mov ecx, eax
jae 0x407879
lea ecx, [esp + 0xcc]
cmp byte [edx + ecx - 1], 9
je 0x407893
cmp esi, 0x10
jae 0x40788c
lea eax, [esp + 0xcc]
cmp byte [edx + eax - 1], 0x20
jne 0x4078b2
push 1
dec edx
push edx
lea ecx, [esp + 0xd0]
call fcn.00406280
mov edx, dword [esp + 0xdc]
test edx, edx
ja 0x407833
push 4
push 0
push str.__t_r_n
lea ecx, [esp + 0xd4]
call fcn.00406020
mov esi, eax
cmp esi, 0xffffffff
jne 0x407906
mov ecx, dword [esp + 0x118]
push eax
push 0
lea edx, [esp + 0xd0]
push edx
call fcn.00406640
cmp dword [esp + 0xe0], 0x10
jb 0x4078ff
mov eax, dword [esp + 0xcc]
push eax
call fcn.0040f50b
add esp, 4
xor eax, eax
jmp 0x40799f
push esi
push 0
lea ecx, [esp + 0xec]
push ecx
lea ecx, [esp + 0xd4]
call fcn.00406be0
mov ecx, dword [esp + 0x118]
push 0xffffffffffffffff
push 0
push eax
mov byte [esp + 0x118], 1
call fcn.00406640
cmp dword [esp + 0xfc], 0x10
mov byte [esp + 0x10c], 0
jb 0x407958
mov edx, dword [esp + 0xe8]
push edx
call fcn.0040f50b
add esp, 4
push ebp
push 1
inc esi
push esi
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0xd8]
mov byte [esp + 0x1c], 0x3d
call fcn.00405eb0
mov edi, eax
cmp edi, 0xffffffff
mov dword [esp + 0x14], edi
jne 0x4079d0
mov eax, dword [esp + 0xe0]
dec eax
cmp esi, eax
lea ecx, [esp + 0xcc]
jle 0x4080ee
call fcn.00406250
mov eax, dword [esp + 0x18]
pop ebp
pop edi
mov ecx, dword [esp + 0x100]
pop esi
mov dword fs:[0], ecx
mov ecx, dword [esp + 0xf8]
pop ebx
call fcn.0040f5ac
add esp, 0x104
ret 0xc
mov edi, dword [esp + 0x14]
lea esp, [esp]
mov edx, dword [esp + 0x18]
push 0
inc edx
push 0x4187df
lea ecx, [esp + 0x9c]
mov dword [esp + 0x20], edx
mov dword [esp + 0xb4], 0xf
mov dword [esp + 0xb0], 0
mov byte [esp + 0xa0], 0
call fcn.00406930
sub edi, esi
push edi
push esi
lea ecx, [esp + 0xb8]
push ecx
lea ecx, [esp + 0xd8]
mov byte [esp + 0x11c], 2
call fcn.00406be0
mov ecx, dword [esp + 0xc4]
test ecx, ecx
mov byte [esp + 0x110], 3
jbe 0x407c36
mov ebx, dword [esp + 0xb4]
mov ebp, dword [esp + 0xc8]
nop
cmp ebp, 0x10
mov eax, ebx
jae 0x407a5e
lea eax, [esp + 0xb4]
cmp byte [eax], 0xd
je 0x407aa0
cmp ebp, 0x10
mov eax, ebx
jae 0x407a71
lea eax, [esp + 0xb4]
cmp byte [eax], 0xa
je 0x407aa0
cmp ebp, 0x10
mov eax, ebx
jae 0x407a84
lea eax, [esp + 0xb4]
cmp byte [eax], 9
je 0x407aa0
cmp ebp, 0x10
mov eax, ebx
jae 0x407a97
lea eax, [esp + 0xb4]
cmp byte [eax], 0x20
jne 0x407b22
mov esi, 1
cmp ecx, esi
jae 0x407aaf
mov esi, ecx
test esi, esi
jbe 0x407b11
cmp ebp, 0x10
mov edx, ebx
jae 0x407b1e
lea edx, [esp + 0xb4]
mov eax, edx
sub ecx, esi
push ecx
add edx, esi
push edx
push eax
call fcn.00410030
mov eax, dword [esp + 0xd0]
mov ecx, dword [esp + 0xd4]
sub eax, esi
add esp, 0xc
cmp ecx, 0x10
mov ecx, dword [esp + 0xb4]
mov dword [esp + 0xc4], eax
jae 0x407af8
lea ecx, [esp + 0xb4]
mov byte [ecx + eax], 0
mov ebx, dword [esp + 0xb4]
mov ebp, dword [esp + 0xc8]
mov ecx, dword [esp + 0xc4]
test ecx, ecx
ja 0x407a50
jmp 0x407c36
mov eax, ebx
jmp 0x407abf
test ecx, ecx
jbe 0x407c36
lea ebx, [ebx]
cmp ebp, 0x10
mov eax, ebx
jae 0x407b3e
lea eax, [esp + 0xb4]
cmp byte [eax + ecx - 1], 0xd
je 0x407b88
cmp ebp, 0x10
mov eax, ebx
jae 0x407b53
lea eax, [esp + 0xb4]
cmp byte [eax + ecx - 1], 0xa
je 0x407b88
cmp ebp, 0x10
mov eax, ebx
jae 0x407b68
lea eax, [esp + 0xb4]
cmp byte [eax + ecx - 1], 9
je 0x407b88
cmp ebp, 0x10
mov eax, ebx
jae 0x407b7d
lea eax, [esp + 0xb4]
cmp byte [eax + ecx - 1], 0x20
jne 0x407c36
lea edi, [ecx - 1]
cmp ecx, edi
mov esi, 1
jae 0x407bb5
lea ecx, [esp + 0xb0]
call fcn.00417320
mov ebx, dword [esp + 0xb4]
mov ebp, dword [esp + 0xc8]
mov ecx, dword [esp + 0xc4]
mov eax, ecx
sub eax, edi
cmp eax, 1
jae 0x407bc4
mov esi, eax
test esi, esi
jbe 0x407c2e
cmp ebp, 0x10
mov edx, ebx
jae 0x407e28
lea edx, [esp + 0xb4]
mov ecx, edx
sub eax, esi
add edx, edi
push eax
add edx, esi
push edx
add ecx, edi
push ecx
call fcn.00410030
mov eax, dword [esp + 0xd0]
mov ecx, dword [esp + 0xd4]
sub eax, esi
add esp, 0xc
cmp ecx, 0x10
mov ecx, dword [esp + 0xb4]
mov dword [esp + 0xc4], eax
jae 0x407c15
lea ecx, [esp + 0xb4]
mov byte [ecx + eax], 0
mov ebx, dword [esp + 0xb4]
mov ebp, dword [esp + 0xc8]
mov ecx, dword [esp + 0xc4]
test ecx, ecx
ja 0x407b30
mov edi, dword [esp + 0x14]
push 1
inc edi
push edi
lea edx, [esp + 0x18]
push edx
lea ecx, [esp + 0xd8]
mov byte [esp + 0x1c], 0x22
call fcn.00405eb0
mov esi, eax
cmp esi, 0xffffffff
jne 0x407c7f
push 1
push edi
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0xd8]
mov byte [esp + 0x1c], 0x27
call fcn.00405eb0
mov esi, eax
cmp esi, 0xffffffff
je 0x4080cf
push 1
lea edi, [esi + 1]
push edi
lea ecx, [esp + 0x18]
push ecx
lea ecx, [esp + 0xd8]
mov byte [esp + 0x1c], 0x22
call fcn.00405eb0
cmp eax, 0xffffffff
mov dword [esp + 0x14], eax
jne 0x407cca
push 1
push edi
lea edx, [esp + 0x18]
push edx
lea ecx, [esp + 0xd8]
mov byte [esp + 0x1c], 0x27
call fcn.00405eb0
cmp eax, 0xffffffff
mov dword [esp + 0x14], eax
je 0x4080cf
sub eax, esi
dec eax
push eax
push edi
lea eax, [esp + 0xf0]
push eax
lea ecx, [esp + 0xd8]
call fcn.00406be0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [esp + 0xa0]
mov byte [esp + 0x11c], 4
call fcn.00406640
cmp dword [esp + 0x100], 0x10
mov byte [esp + 0x110], 3
jb 0x407d1e
mov ecx, dword [esp + 0xec]
push ecx
call fcn.0040f50b
add esp, 4
mov ecx, dword [esp + 0xa8]
test ecx, ecx
mov dword [esp + 0x100], 0xf
mov dword [esp + 0xfc], 0
mov byte [esp + 0xec], 0
jbe 0x407f45
mov ebx, dword [esp + 0x98]
mov ebp, dword [esp + 0xac]
mov edi, 0x10
mov edi, edi
cmp ebp, edi
mov eax, ebx
jae 0x407d6d
lea eax, [esp + 0x98]
cmp byte [eax], 0xd
je 0x407dac
cmp ebp, edi
mov eax, ebx
jae 0x407d7f
lea eax, [esp + 0x98]
cmp byte [eax], 0xa
je 0x407dac
cmp ebp, edi
mov eax, ebx
jae 0x407d91
lea eax, [esp + 0x98]
cmp byte [eax], 9
je 0x407dac
cmp ebp, edi
mov eax, ebx
jae 0x407da3
lea eax, [esp + 0x98]
cmp byte [eax], 0x20
jne 0x407e33
mov esi, 1
cmp ecx, esi
jae 0x407dbb
mov esi, ecx
test esi, esi
jbe 0x407e1b
cmp ebp, edi
mov edx, ebx
jae 0x407e2f
lea edx, [esp + 0x98]
mov eax, edx
sub ecx, esi
push ecx
add edx, esi
push edx
push eax
call fcn.00410030
mov eax, dword [esp + 0xb4]
mov ecx, dword [esp + 0xb8]
sub eax, esi
add esp, 0xc
cmp ecx, edi
mov ecx, dword [esp + 0x98]
mov dword [esp + 0xa8], eax
jae 0x407e02
lea ecx, [esp + 0x98]
mov byte [ecx + eax], 0
mov ecx, dword [esp + 0xa8]
mov ebx, dword [esp + 0x98]
mov ebp, dword [esp + 0xac]
test ecx, ecx
ja 0x407d60
jmp 0x407f4a
mov ecx, ebx
jmp 0x407bd8
mov eax, ebx
jmp 0x407dca
test ecx, ecx
jbe 0x407f4a
jmp 0x407e42
mov edi, 0x10
cmp ebp, edi
mov eax, ebx
jae 0x407e4f
lea eax, [esp + 0x98]
cmp byte [eax + ecx - 1], 0xd
je 0x407e96
cmp ebp, edi
mov eax, ebx
jae 0x407e63
lea eax, [esp + 0x98]
cmp byte [eax + ecx - 1], 0xa
je 0x407e96
cmp ebp, edi
mov eax, ebx
jae 0x407e77
lea eax, [esp + 0x98]
cmp byte [eax + ecx - 1], 9
je 0x407e96
cmp ebp, edi
mov eax, ebx
jae 0x407e8b
lea eax, [esp + 0x98]
cmp byte [eax + ecx - 1], 0x20
jne 0x407f4a
lea edi, [ecx - 1]
cmp ecx, edi
mov esi, 1
jae 0x407ec3
lea ecx, [esp + 0x94]
call fcn.00417320
mov ecx, dword [esp + 0xa8]
mov ebx, dword [esp + 0x98]
mov ebp, dword [esp + 0xac]
mov eax, ecx
sub eax, edi
cmp eax, 1
jae 0x407ed2
mov esi, eax
test esi, esi
jbe 0x407f3d
cmp ebp, 0x10
mov edx, ebx
jae 0x4080c8
lea edx, [esp + 0x98]
mov ecx, edx
sub eax, esi
push eax
lea eax, [edi + esi]
add eax, edx
push eax
add edi, ecx
push edi
call fcn.00410030
mov eax, dword [esp + 0xb4]
mov ecx, dword [esp + 0xb8]
sub eax, esi
add esp, 0xc
cmp ecx, 0x10
mov ecx, dword [esp + 0x98]
mov dword [esp + 0xa8], eax
jae 0x407f24
lea ecx, [esp + 0x98]
mov byte [eax + ecx], 0
mov ecx, dword [esp + 0xa8]
mov ebx, dword [esp + 0x98]
mov ebp, dword [esp + 0xac]
test ecx, ecx
ja 0x407e3d
mov edi, 0x10
lea ecx, [esp + 0x94]
push ecx
lea edx, [esp + 0xb4]
push edx
lea ecx, [esp + 0x5c]
call fcn.00406a20
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0x114], 5
call fcn.00406a90
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x90]
push ecx
mov ecx, dword [esp + 0x128]
mov byte [esp + 0x118], 6
call fcn.00407570
cmp dword [esp + 0x50], edi
jb 0x407fa9
mov edx, dword [esp + 0x3c]
push edx
call fcn.0040f50b
add esp, 4
mov eax, dword [esp + 0x34]
xor esi, esi
cmp eax, edi
mov ebp, 0xf
mov dword [esp + 0x50], ebp
mov dword [esp + 0x4c], esi
mov byte [esp + 0x3c], 0
jb 0x407fd2
mov eax, dword [esp + 0x20]
push eax
call fcn.0040f50b
add esp, 4
cmp dword [esp + 0x88], edi
mov dword [esp + 0x34], ebp
mov dword [esp + 0x30], esi
mov byte [esp + 0x20], 0
jb 0x407ff5
mov ecx, dword [esp + 0x74]
push ecx
call fcn.0040f50b
add esp, 4
cmp dword [esp + 0x6c], edi
mov dword [esp + 0x88], ebp
mov dword [esp + 0x84], esi
mov byte [esp + 0x74], 0
jb 0x40801b
mov edx, dword [esp + 0x58]
push edx
call fcn.0040f50b
add esp, 4
mov dword [esp + 0x68], esi
mov esi, dword [esp + 0x14]
push 1
inc esi
push esi
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0xd8]
mov dword [esp + 0x78], ebp
mov byte [esp + 0x64], 0
mov byte [esp + 0x1c], 0x3d
call fcn.00405eb0
mov ebx, eax
cmp dword [esp + 0xc8], edi
mov dword [esp + 0x14], ebx
jb 0x408065
mov ecx, dword [esp + 0xb4]
push ecx
call fcn.0040f50b
add esp, 4
cmp dword [esp + 0xac], edi
mov dword [esp + 0xc8], ebp
mov dword [esp + 0xc4], 0
mov byte [esp + 0xb4], 0
mov byte [esp + 0x110], 0
jb 0x4080a0
mov edx, dword [esp + 0x98]
push edx
call fcn.0040f50b
add esp, 4
cmp ebx, 0xffffffff
mov dword [esp + 0xac], ebp
mov dword [esp + 0xa8], 0
mov byte [esp + 0x98], 0
jne 0x4079c5
jmp 0x40797e
mov ecx, ebx
jmp 0x407ee6
lea ecx, [esp + 0xb0]
call fcn.00406250
lea ecx, [esp + 0x94]
call fcn.00406250
lea ecx, [esp + 0xcc]
call fcn.00406250
or eax, 0xffffffff
jmp 0x40799e