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

Disassembly:
push 0xffffffffffffffff
push 0x4283f1
mov eax, dword fs:[0]
push eax
sub esp, 0x3ec
mov eax, dword [0x42f0f4]
xor eax, esp
mov dword [esp + 0x3e8], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x42f0f4]
xor eax, esp
push eax
lea eax, [esp + 0x400]
mov dword fs:[0], eax
mov ecx, dword [esp + 0x410]
xor ebp, ebp
mov dword [esp + 0x408], ebp
mov dword [esp + 0x4c], ecx
mov dword [esp + 0x50], ebp
call fcn.004057b0
lea eax, [esp + 0x38]
push eax
push 0x20019
push ebp
push 0x42994c
push 0x80000002
mov dword [esp + 0x41c], ebp
mov dword [esp + 0x64], 1
mov dword [esp + 0x4c], ebp
call dword [0x429010]
cmp eax, ebp
jne 0x411020
mov edx, dword [esp + 0x38]
push 0x80
lea ecx, [esp + 0x180]
push ecx
push ebp
push edx
mov dword [esp + 0x54], ebp
call dword [0x429014]
test eax, eax
jne 0x411020
mov edi, 0xf
lea ebx, [ebp + 0x10]
jmp 0x410740
push ebp
push 0x4292e8
lea ecx, [esp + 0x78]
mov dword [esp + 0x90], edi
mov dword [esp + 0x8c], ebp
mov byte [esp + 0x7c], 0
call fcn.00403d50
push ebp
push 0x4292e8
lea ecx, [esp + 0xb0]
mov dword [esp + 0x410], 1
mov dword [esp + 0xc8], edi
mov dword [esp + 0xc4], ebp
mov byte [esp + 0xb4], 0
call fcn.00403d50
push ebp
push 0x4292e8
lea ecx, [esp + 0x94]
mov byte [esp + 0x410], 2
mov dword [esp + 0xac], edi
mov dword [esp + 0xa8], ebp
mov byte [esp + 0x98], 0
call fcn.00403d50
push ebp
push 0x4292e8
lea ecx, [esp + 0xcc]
mov byte [esp + 0x410], 3
mov dword [esp + 0xe4], edi
mov dword [esp + 0xe0], ebp
mov byte [esp + 0xd0], 0
call fcn.00403d50
push ebp
push 0x4292e8
lea ecx, [esp + 0xe8]
mov byte [esp + 0x410], 4
mov dword [esp + 0x100], edi
mov dword [esp + 0xfc], ebp
mov byte [esp + 0xec], 0
call fcn.00403d50
lea eax, [esp + 0x17c]
mov byte [esp + 0x408], 5
mov dword [esp + 0x2c], edi
mov dword [esp + 0x28], ebp
mov byte [esp + 0x18], 0
lea ecx, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x410844
sub eax, ecx
push eax
lea eax, [esp + 0x180]
push eax
lea ecx, [esp + 0x1c]
call fcn.00403d50
lea ecx, [esp + 0x14]
push ecx
lea edx, [esp + 0x58]
push 0x42994c
push edx
mov byte [esp + 0x414], 6
call fcn.00404d20
add esp, 0xc
cmp dword [eax + 0x18], ebx
jb 0x410888
mov eax, dword [eax + 4]
jmp 0x41088b
add eax, 4
lea ecx, [esp + 0x40]
push ecx
push 0x20019
push ebp
push eax
push 0x80000002
call dword [0x429010]
mov esi, eax
cmp dword [esp + 0x6c], ebx
jb 0x4108b7
mov edx, dword [esp + 0x58]
push edx
call fcn.0041a65d
add esp, 4
mov dword [esp + 0x6c], edi
mov dword [esp + 0x68], ebp
mov byte [esp + 0x58], 0
mov byte [esp + 0x408], 5
cmp dword [esp + 0x2c], ebx
jb 0x4108df
mov eax, dword [esp + 0x18]
push eax
call fcn.0041a65d
add esp, 4
mov dword [esp + 0x30], ebp
mov dword [esp + 0x34], 0x80
mov dword [esp + 0x48], ebp
mov dword [esp + 0x3c], 0x200
cmp esi, ebp
jne 0x410d77
lea ecx, [esp + 0x3c]
push ecx
lea edx, [esp + 0x200]
push edx
lea eax, [esp + 0x50]
push eax
mov eax, dword [esp + 0x4c]
push ebp
lea ecx, [esp + 0x44]
push ecx
lea edx, [esp + 0x110]
push edx
push ebp
push eax
call dword [0x42901c]
test eax, eax
jne 0x410d77
mov esi, 1
cmp dword [esp + 0x48], esi
je 0x410947
add dword [esp + 0x30], esi
jmp 0x410d2d
lea eax, [esp + 0xfc]
mov dword [esp + 0x2c], edi
mov dword [esp + 0x28], ebp
mov byte [esp + 0x18], 0
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x410960
sub eax, edx
push eax
lea ecx, [esp + 0x100]
push ecx
lea ecx, [esp + 0x1c]
call fcn.00403d50
mov esi, dword [esp + 0x28]
mov ecx, esi
cmp esi, 0xa
jb 0x41098b
mov ecx, 0xa
mov edi, dword [esp + 0x2c]
mov eax, dword [esp + 0x18]
cmp edi, ebx
jae 0x41099b
lea eax, [esp + 0x18]
push ecx
push 0x429940
push eax
call fcn.00402800
add esp, 0xc
cmp eax, ebp
jne 0x4109c2
cmp esi, 0xa
jae 0x4109b8
or eax, 0xffffffff
jmp 0x4109c0
xor eax, eax
cmp esi, 0xa
setne al
cmp eax, ebp
sete bl
mov byte [esp + 0x408], 5
cmp edi, 0x10
jb 0x4109df
mov edx, dword [esp + 0x18]
push edx
call fcn.0041a65d
add esp, 4
test bl, bl
je 0x410a7c
lea eax, [esp + 0x1fc]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4109f1
sub eax, edx
push eax
lea eax, [esp + 0x200]
push eax
lea ecx, [esp + 0x78]
call fcn.00403d50
mov eax, dword [esp + 0x84]
lea esi, [eax - 1]
cmp esi, eax
jbe 0x410a26
call fcn.0041a7c5
mov eax, dword [esp + 0x84]
cmp dword [esp + 0x88], 0x10
mov ecx, dword [esp + 0x74]
jae 0x410a38
lea ecx, [esp + 0x74]
cmp byte [ecx + esi], 0x5c
je 0x410d1e
lea esi, [eax - 1]
cmp esi, eax
jbe 0x410a4e
call fcn.0041a7c5
cmp dword [esp + 0x88], 0x10
mov eax, dword [esp + 0x74]
jae 0x410a60
lea eax, [esp + 0x74]
cmp byte [eax + esi], 0x2f
je 0x410d1e
push 0x5c
push 1
lea ecx, [esp + 0x78]
call fcn.004039b0
jmp 0x410d1e
lea eax, [esp + 0xfc]
mov dword [esp + 0x2c], 0xf
mov dword [esp + 0x28], ebp
mov byte [esp + 0x18], 0
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x410a97
sub eax, edx
push eax
lea ecx, [esp + 0x100]
push ecx
lea ecx, [esp + 0x1c]
call fcn.00403d50
mov esi, dword [esp + 0x28]
mov ecx, esi
cmp esi, 7
jb 0x410ac2
mov ecx, 7
mov edi, dword [esp + 0x2c]
mov ebp, dword [esp + 0x18]
mov eax, ebp
cmp edi, 0x10
jae 0x410ad5
lea eax, [esp + 0x18]
push ecx
push 0x429b14
push eax
call fcn.00402800
add esp, 0xc
test eax, eax
jne 0x410afa
cmp esi, 7
jae 0x410af2
or eax, 0xffffffff
jmp 0x410afa
xor eax, eax
cmp esi, 7
setne al
xor esi, esi
cmp eax, esi
sete bl
mov byte [esp + 0x408], 5
cmp edi, 0x10
jb 0x410b17
push ebp
call fcn.0041a65d
add esp, 4
test bl, bl
je 0x410b38
lea eax, [esp + 0x1fc]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x410b25
lea ecx, [esp + 0xe0]
jmp 0x410d0e
mov ebp, 0xf
lea eax, [esp + 0xfc]
mov dword [esp + 0x2c], ebp
mov dword [esp + 0x28], esi
mov byte [esp + 0x18], 0
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x410b54
sub eax, edx
push eax
lea eax, [esp + 0x100]
push eax
lea ecx, [esp + 0x1c]
call fcn.00403d50
mov ecx, dword [esp + 0x28]
push 8
push 0x429b08
push ecx
push esi
lea ecx, [esp + 0x24]
mov byte [esp + 0x418], 9
call fcn.00402da0
test eax, eax
mov edi, 0x10
sete bl
mov byte [esp + 0x408], 5
cmp dword [esp + 0x2c], edi
jb 0x410bb2
mov edx, dword [esp + 0x18]
push edx
call fcn.0041a65d
add esp, 4
test bl, bl
je 0x410bde
lea eax, [esp + 0x1fc]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x410bc0
sub eax, edx
push eax
lea eax, [esp + 0x200]
push eax
lea ecx, [esp + 0xb0]
jmp 0x410d19
lea eax, [esp + 0xfc]
mov dword [esp + 0x2c], ebp
mov dword [esp + 0x28], esi
mov byte [esp + 0x18], 0
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x410bf5
sub eax, edx
push eax
lea ecx, [esp + 0x100]
push ecx
lea ecx, [esp + 0x1c]
call fcn.00403d50
mov edx, dword [esp + 0x28]
push 6
push 0x429b00
push edx
push esi
lea ecx, [esp + 0x24]
mov byte [esp + 0x418], 0xa
call fcn.00402da0
test eax, eax
sete bl
mov byte [esp + 0x408], 5
cmp dword [esp + 0x2c], edi
jb 0x410c4e
mov eax, dword [esp + 0x18]
push eax
call fcn.0041a65d
add esp, 4
test bl, bl
je 0x410c7e
lea eax, [esp + 0x1fc]
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x410c60
sub eax, edx
lea ecx, [esp + 0x1fc]
push eax
push ecx
lea ecx, [esp + 0x94]
jmp 0x410d19
lea eax, [esp + 0xfc]
mov dword [esp + 0x2c], ebp
mov dword [esp + 0x28], esi
mov byte [esp + 0x18], 0
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x410c95
sub eax, edx
push eax
lea edx, [esp + 0x100]
push edx
lea ecx, [esp + 0x1c]
call fcn.00403d50
mov eax, dword [esp + 0x28]
push 5
push 0x429af8
push eax
push esi
lea ecx, [esp + 0x24]
mov byte [esp + 0x418], 0xb
call fcn.00402da0
test eax, eax
sete bl
mov byte [esp + 0x408], 5
cmp dword [esp + 0x2c], edi
jb 0x410cee
mov ecx, dword [esp + 0x18]
push ecx
call fcn.0041a65d
add esp, 4
test bl, bl
je 0x410d1e
lea eax, [esp + 0x1fc]
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x410d00
lea ecx, [esp + 0xc4]
sub eax, edx
push eax
lea edx, [esp + 0x200]
push edx
call fcn.00403d50
inc dword [esp + 0x30]
xor ebp, ebp
lea edi, [ebp + 0xf]
lea ebx, [ebp + 0x10]
lea esi, [ebp + 1]
lea eax, [esp + 0x3c]
push eax
lea ecx, [esp + 0x200]
push ecx
lea edx, [esp + 0x50]
push edx
mov edx, dword [esp + 0x3c]
push ebp
lea eax, [esp + 0x44]
push eax
mov eax, dword [esp + 0x54]
lea ecx, [esp + 0x110]
push ecx
push edx
push eax
mov dword [esp + 0x5c], 0x200
mov dword [esp + 0x54], 0x80
call dword [0x42901c]
test eax, eax
je 0x410938
jmp 0x410d7c
mov esi, 1
mov eax, dword [esp + 0x90]
cmp dword [esp + 0xa4], ebx
jae 0x410d93
lea eax, [esp + 0x90]
push ebp
push 0x4292e8
push eax
call fcn.00402800
add esp, 0xc
cmp eax, ebp
jne 0x410db6
xor eax, eax
cmp dword [esp + 0xa0], ebp
setne al
cmp eax, ebp
je 0x410df8
mov eax, dword [esp + 0xc8]
cmp dword [esp + 0xdc], ebx
jae 0x410dcd
lea eax, [esp + 0xc8]
push ebp
push 0x4292e8
push eax
call fcn.00402800
add esp, 0xc
cmp eax, ebp
jne 0x410f12
xor eax, eax
cmp dword [esp + 0xd8], ebp
setne al
cmp eax, ebp
jne 0x410f12
mov eax, dword [esp + 0xac]
cmp dword [esp + 0xc0], ebx
jae 0x410e0f
lea eax, [esp + 0xac]
push ebp
push 0x4292e8
push eax
call fcn.00402800
add esp, 0xc
cmp eax, ebp
jne 0x410e36
xor eax, eax
cmp dword [esp + 0xbc], ebp
setne al
cmp eax, ebp
je 0x410f12
mov ecx, dword [esp + 0xf4]
push ebp
push 0x4292e8
push ecx
push ebp
lea ecx, [esp + 0xf0]
call fcn.00402da0
test eax, eax
je 0x410f12
mov edx, dword [esp + 0x84]
push ebp
push 0x4292e8
push edx
push ebp
lea ecx, [esp + 0x80]
call fcn.00402da0
test eax, eax
je 0x410f12
lea eax, [esp + 0x17c]
mov dword [esp + 0x2c], edi
mov dword [esp + 0x28], ebp
mov byte [esp + 0x18], 0
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x410e93
sub eax, edx
push eax
lea eax, [esp + 0x180]
push eax
lea ecx, [esp + 0x1c]
call fcn.00403d50
lea ecx, [esp + 0x14]
push ecx
lea edx, [esp + 0x58]
push 0x42994c
push edx
mov byte [esp + 0x414], 0xc
call fcn.00404d20
add esp, 0xc
mov ecx, dword [esp + 0x4c]
push eax
mov byte [esp + 0x40c], 0xd
call fcn.00407440
cmp dword [esp + 0x6c], ebx
jb 0x410ef2
mov eax, dword [esp + 0x58]
push eax
call fcn.0041a65d
add esp, 4
mov dword [esp + 0x6c], edi
mov dword [esp + 0x68], ebp
mov byte [esp + 0x58], 0
cmp dword [esp + 0x2c], ebx
jb 0x410f12
mov ecx, dword [esp + 0x18]
push ecx
call fcn.0041a65d
add esp, 4
mov edx, dword [esp + 0x40]
push edx
call dword [0x429028]
add dword [esp + 0x44], esi
cmp dword [esp + 0xf8], ebx
jb 0x410f3a
mov eax, dword [esp + 0xe4]
push eax
call fcn.0041a65d
add esp, 4
mov dword [esp + 0xf8], edi
mov dword [esp + 0xf4], ebp
mov byte [esp + 0xe4], 0
cmp dword [esp + 0xdc], ebx
jb 0x410f69
mov ecx, dword [esp + 0xc8]
push ecx
call fcn.0041a65d
add esp, 4
mov dword [esp + 0xdc], edi
mov dword [esp + 0xd8], ebp
mov byte [esp + 0xc8], 0
cmp dword [esp + 0xa4], ebx
jb 0x410f98
mov edx, dword [esp + 0x90]
push edx
call fcn.0041a65d
add esp, 4
mov dword [esp + 0xa4], edi
mov dword [esp + 0xa0], ebp
mov byte [esp + 0x90], 0
cmp dword [esp + 0xc0], ebx
jb 0x410fc7
mov eax, dword [esp + 0xac]
push eax
call fcn.0041a65d
add esp, 4
mov dword [esp + 0xc0], edi
mov dword [esp + 0xbc], ebp
mov byte [esp + 0xac], 0
mov byte [esp + 0x408], 0
cmp dword [esp + 0x88], ebx
jb 0x410ffb
mov ecx, dword [esp + 0x74]
push ecx
call fcn.0041a65d
add esp, 4
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x38]
push 0x80
lea edx, [esp + 0x180]
push edx
push eax
push ecx
call dword [0x429014]
test eax, eax
je 0x410740
mov edx, dword [esp + 0x38]
push edx
call dword [0x429028]
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x400]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x3e8]
xor ecx, esp
call fcn.0041ac87
add esp, 0x3f8
ret