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

Disassembly:
sub esp, 0x34
push ebx
push ebp
mov ebp, dword [esp + 0x40]
mov ebx, ecx
mov ecx, dword [esp + 0x48]
mov eax, ecx
push esi
mov esi, edx
mov dword [esp + 0x30], ebx
mov edx, dword [esp + 0x50]
or eax, edx
push edi
mov dword [esp + 0x40], esi
mov dword [esp + 0x18], ecx
jne 0x411a70
mov edi, dword [esp + 0x4c]
xor ecx, ecx
test edi, edi
mov eax, ebp
setne cl
sub eax, esi
inc ecx
add ecx, edi
cmp eax, ecx
jl 0x411e82
mov byte [esi], 0x30
inc esi
test edi, edi
je 0x411a5d
push edi
mov byte [esi], 0x2e
inc esi
push 0x30
push esi
call fcn.004c7d50
add esp, 0xc
add esi, edi
mov dword [ebx], esi
mov eax, ebx
mov dword [ebx + 4], 0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x34
ret
mov eax, edx
shr edx, 0x14
and eax, 0xfffff
mov dword [esp + 0x1c], eax
test edx, edx
jne 0x411a8f
mov dword [esp + 0x14], 0xfffffbce
jmp 0x411b88
lea ebx, [edx - 0x433]
mov dword [esp + 0x18], ecx
or eax, 0x100000
mov dword [esp + 0x14], ebx
mov dword [esp + 0x1c], eax
mov byte [esp + 0x50], 0
cmp ebx, 0xffffffcc
jl 0x411b88
test ebx, ebx
jns 0x411ac2
xor ecx, ecx
lea eax, [ecx + 0x78]
lea edi, [ecx + 1]
jmp 0x411b00
lea ecx, [ebx + 0xf]
shr ecx, 4
mov eax, ecx
mov dword [esp + 0x2c], ecx
imul ecx, ecx, 0x134410
shl eax, 4
add eax, 0x78
mov dword [esp + 0x30], eax
mov eax, 0x38e38e39
shr ecx, 0x12
add ecx, 0x19
mul ecx
mov edi, edx
shr edi, 1
sub edi, 1
js 0x411b88
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x18]
sub eax, ebx
mov ebx, dword [esp + 0x1c]
add eax, 8
mov dword [esp + 0x30], eax
movzx eax, word [ecx*2 + 0x53d670]
shld ebx, edx, 8
shl edx, 8
add eax, edi
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x28], edx
lea eax, [eax + eax*2]
lea eax, [eax*8 + 0x502da8]
mov dword [esp + 0x24], eax
push ebx
push edx
mov edx, dword [esp + 0x38]
mov ecx, eax
call fcn.00409c80
add esp, 8
mov ecx, eax
cmp byte [esp + 0x50], 0
je 0x411cef
mov eax, ebp
sub eax, esi
cmp eax, 9
jl 0x411e82
mov edx, esi
call fcn.0040ef30
add esi, 9
mov cl, byte [esp + 0x50]
mov eax, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
sub eax, 0x18
sub edi, 1
mov dword [esp + 0x24], eax
jns 0x411b38
test cl, cl
jne 0x411b94
cmp esi, ebp
je 0x411e82
mov byte [esi], 0x30
inc esi
mov edi, dword [esp + 0x4c]
test edi, edi
je 0x411ba8
cmp esi, ebp
je 0x411e82
mov byte [esi], 0x2e
inc esi
mov eax, dword [esp + 0x14]
test eax, eax
jns 0x411e53
cdq
xor ebx, ebx
and edx, 0xf
lea ecx, [edx + eax]
mov eax, 0x38e38e39
mul edi
sar ecx, 4
mov eax, edx
neg ecx
shr eax, 1
mov dword [esp + 0x28], ecx
mov dword [esp + 0x38], eax
movzx ecx, byte [ecx + 0x53f970]
lea edx, [eax + 1]
mov dword [esp + 0x50], ecx
mov dword [esp + 0x30], edx
cmp edx, ecx
jbe 0x411e53
test ecx, ecx
je 0x411c21
mov ebx, ecx
mov eax, ebp
sub eax, esi
lea ecx, [ebx + ebx*8]
cmp eax, ecx
jl 0x411e82
test ecx, ecx
je 0x411c1b
push ecx
push 0x30
push esi
call fcn.004c7d50
mov edx, dword [esp + 0x3c]
lea ecx, [ebx + ebx*8]
add esp, 0xc
add esi, ecx
mov ecx, dword [esp + 0x50]
cmp ebx, edx
jae 0x411e6d
mov eax, dword [esp + 0x28]
movzx edx, word [eax*2 + 0x53d6f2]
movzx eax, word [eax*2 + 0x53d6f0]
sub eax, ecx
mov dword [esp + 0x3c], edx
lea ecx, [eax + ebx]
mov eax, ebp
sub eax, esi
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x20], eax
lea eax, [ecx + ecx*2]
lea eax, [eax*8 + 0x50a068]
mov dword [esp + 0x24], eax
cmp ecx, edx
jae 0x411e4e
mov ecx, dword [esp + 0x18]
mov edx, 8
mov eax, dword [esp + 0x1c]
sub edx, dword [esp + 0x28]
shld eax, ecx, 8
shl edx, 4
sub edx, dword [esp + 0x14]
shl ecx, 8
push eax
push ecx
mov ecx, dword [esp + 0x2c]
call fcn.00409c80
add esp, 8
mov edx, eax
mov dword [esp + 0x50], edx
cmp ebx, dword [esp + 0x38]
jae 0x411d28
cmp dword [esp + 0x20], 9
jl 0x411e82
mov edx, esi
mov ecx, eax
call fcn.0040ef30
mov ecx, dword [esp + 0x2c]
inc ebx
sub dword [esp + 0x20], 9
inc ecx
add dword [esp + 0x24], 0x18
add esi, 9
mov edx, dword [esp + 0x3c]
mov dword [esp + 0x2c], ecx
cmp ebx, dword [esp + 0x30]
jb 0x411c60
mov eax, dword [esp + 0x34]
mov dword [eax], esi
mov dword [eax + 4], 0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x34
ret
test ecx, ecx
je 0x411b6c
call fcn.00409b50
mov ebx, eax
mov eax, ebp
sub eax, esi
cmp eax, ebx
jl 0x411e82
mov edx, ecx
mov ecx, ebx
push esi
call fcn.00412bc0
add esp, 4
mov cl, 1
add esi, ebx
mov byte [esp + 0x50], cl
mov ebx, dword [esp + 0x2c]
jmp 0x411b70
lea eax, [ebx + ebx*8]
xor ecx, ecx
mov ebx, edi
sub ebx, eax
mov eax, 9
sub eax, ebx
mov dword [esp + 0x3c], eax
je 0x411da8
mov ebp, eax
mov ecx, dword [esp + 0x50]
mov eax, 0xcccccccd
mul edx
shr edx, 3
mov dword [esp + 0x50], edx
lea eax, [edx + edx*4]
add eax, eax
sub ecx, eax
sub ebp, 1
jne 0x411d40
mov ebp, dword [esp + 0x48]
cmp ecx, 5
jne 0x411da8
mov ecx, dword [esp + 0x14]
not ecx
sub ecx, edi
test ecx, ecx
jle 0x411da1
cmp ecx, 0x3c
jge 0x411d9a
mov eax, 1
xor edx, edx
call fcn.004f5620
add eax, 0xffffffff
adc edx, 0xffffffff
and eax, dword [esp + 0x18]
and edx, dword [esp + 0x1c]
or eax, edx
mov edx, dword [esp + 0x50]
je 0x411da1
mov edi, 1
jmp 0x411db3
mov edi, 2
jmp 0x411db3
mov eax, 5
cmp eax, ecx
sbb edi, edi
neg edi
test ebx, ebx
je 0x411dd0
mov eax, ebp
sub eax, esi
cmp eax, ebx
jl 0x411e82
push esi
mov ecx, ebx
call fcn.0040efb0
add esp, 4
add esi, ebx
test edi, edi
je 0x411e6d
mov ebx, dword [esp + 0x40]
mov eax, esi
mov edx, ebp
cmp esi, ebx
je 0x411e02
mov cl, byte [eax - 1]
dec eax
cmp cl, 0x2e
jne 0x411df1
mov edx, eax
jmp 0x411dfe
cmp cl, 0x39
jne 0x411e2b
mov byte [eax], 0x30
mov edi, 1
cmp eax, ebx
jne 0x411de4
mov byte [eax], 0x31
cmp edx, ebp
je 0x411e0e
mov word [edx], 0x2e30
cmp esi, ebp
je 0x411e82
mov eax, dword [esp + 0x34]
mov byte [esi], 0x30
inc esi
mov dword [eax], esi
mov dword [eax + 4], 0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x34
ret
cmp edi, 1
je 0x411e35
test cl, 1
je 0x411e6d
inc cl
mov byte [eax], cl
mov eax, dword [esp + 0x34]
mov dword [eax], esi
mov dword [eax + 4], 0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x34
ret
lea eax, [ebx + ebx*8]
sub edi, eax
mov eax, ebp
sub eax, esi
cmp eax, edi
jl 0x411e82
test edi, edi
je 0x411e6b
push edi
push 0x30
push esi
call fcn.004c7d50
add esp, 0xc
add esi, edi
mov eax, dword [esp + 0x34]
mov dword [eax], esi
mov dword [eax + 4], 0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x34
ret
mov eax, dword [esp + 0x34]
pop edi
pop esi
mov dword [eax], ebp
pop ebp
mov dword [eax + 4], 0x84
pop ebx
add esp, 0x34
ret