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

Disassembly:
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x24c0890
push eax
mov dword fs:[0], esp
sub esp, 0x60
push ebx
push ebp
push esi
mov ebp, ecx
xor ebx, ebx
cmp ebp, ebx
push edi
mov edi, edx
je 0x2440906
cmp edi, ebx
je 0x2440906
mov dword [esp + 0x28], ebx
mov dword [esp + 0x2c], ebx
lea eax, [esp + 0x14]
push eax
mov edx, 0x11
mov ecx, 0x400
mov dword [esp + 0x7c], ebx
mov dword [esp + 0x18], ebx
call fcn.02440180
test eax, eax
je 0x24405a1
lea ecx, [esp + 0x18]
push ecx
mov edx, 0x12
mov ecx, 0x400
mov dword [esp + 0x1c], ebx
call fcn.02440180
test eax, eax
je 0x24405a1
lea edx, [esp + 0x1c]
push edx
mov edx, 0x1010
mov ecx, 0x400
mov dword [esp + 0x20], ebx
call fcn.02440180
test eax, eax
je 0x24405a1
mov dword [esp + 0x30], ebx
mov dword [esp + 0x34], ebx
lea eax, [esp + 0x30]
push eax
mov edx, 0xf
mov ecx, 0x400
mov byte [esp + 0x7c], 1
call fcn.024826f0
test eax, eax
je 0x2440598
lea ecx, [esp + 0x30]
call fcn.0247f850
test eax, eax
je 0x2440598
mov dword [esp + 0x38], ebx
mov dword [esp + 0x3c], ebx
lea ecx, [esp + 0x38]
push ecx
mov edx, 0xe
mov ecx, 0x400
mov byte [esp + 0x7c], 2
call fcn.024826f0
test eax, eax
je 0x244058f
lea ecx, [esp + 0x38]
call fcn.0247f850
test eax, eax
je 0x244058f
mov dword [esp + 0x10], ebx
mov dword [esp + 0x48], ebx
mov dword [esp + 0x4c], ebx
lea edx, [esp + 0x48]
push edx
mov edx, 0x10
mov ecx, 0x400
mov byte [esp + 0x7c], 3
call fcn.024826f0
test eax, eax
jne 0x2440384
lea ecx, [esp + 0x48]
jmp 0x244058a
lea ecx, [esp + 0x48]
call fcn.0247f850
test eax, eax
jne 0x244039a
lea ecx, [esp + 0x48]
jmp 0x244058a
mov dword [esp + 0x40], ebx
mov dword [esp + 0x44], ebx
mov edx, 0x24e26a0
lea ecx, [esp + 0x40]
mov byte [esp + 0x78], 4
call fcn.0247f900
test eax, eax
jne 0x24403cb
lea ecx, [esp + 0x40]
call fcn.024017d0
lea ecx, [esp + 0x48]
jmp 0x244058a
mov esi, dword [esp + 0x4c]
cmp word [esi], bx
je 0x2440400
mov ax, word [esi]
cmp ax, 0x3b
je 0x24403f8
lea edx, [esp + 0x20]
lea ecx, [esp + 0x40]
mov word [esp + 0x20], ax
mov word [esp + 0x22], bx
call fcn.0247f890
test eax, eax
je 0x24403b9
add esi, 2
cmp word [esi], bx
jne 0x24403d4
mov ecx, dword [esp + 0x44]
lea edx, [esp + 0x10]
call fcn.024810e0
test eax, eax
jne 0x2440415
xor esi, esi
jmp 0x2440419
mov esi, dword [esp + 0x10]
mov eax, 0xcccccccd
mul esi
shr edx, 3
xor ecx, ecx
lea eax, [edx + edx*4]
shl eax, 1
cmp esi, eax
setne cl
dec ecx
and ecx, edx
mov dword [esp + 0x10], ecx
lea ecx, [esp + 0x40]
call fcn.024017d0
lea ecx, [esp + 0x48]
call fcn.024017d0
call dword [sym.imp.kernel32.dll_GetVersion]
cmp eax, 0x80000000
jae 0x2440541
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x84]
xor edx, edx
cmp eax, ecx
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], edx
mov dword [esp + 0x64], edx
mov dword [esp + 0x68], edx
mov dword [esp + 0x6c], edx
mov dword [esp + 0x58], eax
jb 0x2440486
mov dword [esp + 0x58], ecx
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x3c]
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0x60], ecx
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x64], edx
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], ecx
mov dword [esp + 0x48], ebx
mov dword [esp + 0x4c], ebx
lea ecx, [esp + 0x48]
mov byte [esp + 0x78], 5
call fcn.024017d0
push 0xc8
call fcn.024acf00
add esp, 4
cmp eax, ebx
mov dword [esp + 0x4c], eax
je 0x244050d
mov dword [esp + 0x48], 0xc8
mov word [eax], bx
mov edx, dword [esp + 0x48]
mov eax, dword [esp + 0x4c]
shr edx, 1
push edx
mov edx, dword [esp + 0x84]
push eax
lea ecx, [esp + 0x60]
push ecx
push edi
push edx
push 0x400
call dword [sym.imp.kernel32.dll_GetNumberFormatW]
test eax, eax
jne 0x2440513
lea ecx, [esp + 0x48]
jmp 0x244058a
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x4c]
shr eax, 1
mov word [ecx + eax*2 - 2], bx
mov edx, dword [esp + 0x4c]
lea ecx, [esp + 0x28]
call fcn.0247f900
test eax, eax
lea ecx, [esp + 0x48]
je 0x244058a
call fcn.024017d0
jmp 0x244080b
mov dword [esp + 0x40], ebx
mov dword [esp + 0x44], ebx
mov ecx, dword [esp + 0x3c]
lea edx, [esp + 0x40]
mov byte [esp + 0x78], 6
call fcn.0247fbd0
test eax, eax
je 0x2440586
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov ecx, dword [esp + 0x34]
lea edx, [esp + 0x20]
mov byte [esp + 0x78], 7
call fcn.0247fbd0
test eax, eax
jne 0x24405af
lea ecx, [esp + 0x20]
call fcn.024017d0
lea ecx, [esp + 0x40]
call fcn.024017d0
lea ecx, [esp + 0x38]
call fcn.024017d0
lea ecx, [esp + 0x30]
call fcn.024017d0
lea ecx, [esp + 0x28]
call fcn.024017d0
jmp 0x2440906
mov dword [esp + 0x48], ebx
mov dword [esp + 0x4c], ebx
lea edx, [esp + 0x48]
mov ecx, edi
mov byte [esp + 0x78], 8
call fcn.0247fbd0
test eax, eax
jne 0x2440651
lea ecx, [esp + 0x48]
call fcn.024017d0
mov eax, dword [esp + 0x24]
cmp eax, ebx
mov dword [esp + 0x20], ebx
je 0x24405f1
push eax
call fcn.024ad03a
add esp, 4
mov dword [esp + 0x24], ebx
mov eax, dword [esp + 0x44]
cmp eax, ebx
mov dword [esp + 0x40], ebx
je 0x244060a
push eax
call fcn.024ad03a
add esp, 4
mov dword [esp + 0x44], ebx
mov eax, dword [esp + 0x3c]
cmp eax, ebx
mov dword [esp + 0x38], ebx
je 0x2440623
push eax
call fcn.024ad03a
add esp, 4
mov dword [esp + 0x3c], ebx
mov eax, dword [esp + 0x34]
cmp eax, ebx
mov dword [esp + 0x30], ebx
je 0x244063c
push eax
call fcn.024ad03a
add esp, 4
mov dword [esp + 0x34], ebx
mov eax, dword [esp + 0x2c]
cmp eax, ebx
mov dword [esp + 0x28], ebx
je 0x2440906
jmp 0x24408fd
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x84]
xor edx, edx
cmp eax, ecx
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], edx
mov dword [esp + 0x64], edx
mov dword [esp + 0x68], edx
mov dword [esp + 0x6c], edx
mov dword [esp + 0x58], eax
jb 0x244067e
mov dword [esp + 0x58], ecx
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x44]
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x24]
mov dword [esp + 0x60], ecx
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x64], edx
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], ecx
push 0x64
mov byte [esp + 0x7c], 9
mov dword [esp + 0x54], ebx
call fcn.024acf00
mov esi, eax
add esp, 4
cmp esi, ebx
mov dword [esp + 0x54], esi
je 0x2440713
mov ecx, dword [esp + 0x80]
push 0x64
push esi
lea edx, [esp + 0x60]
push edx
mov byte [esi], bl
mov eax, dword [esp + 0x58]
push eax
push ecx
push 0x400
mov dword [esp + 0x68], 0x64
call dword [sym.imp.kernel32.dll_GetNumberFormatA]
test eax, eax
jne 0x24407a5
push esi
call fcn.024ad03a
mov eax, dword [esp + 0x50]
add esp, 4
cmp eax, ebx
mov dword [esp + 0x48], ebx
je 0x244088d
jmp 0x2440880
mov eax, dword [esp + 0x4c]
cmp eax, ebx
mov dword [esp + 0x48], ebx
je 0x244072c
push eax
call fcn.024ad03a
add esp, 4
mov dword [esp + 0x4c], ebx
mov eax, dword [esp + 0x24]
cmp eax, ebx
mov dword [esp + 0x20], ebx
je 0x2440745
push eax
call fcn.024ad03a
add esp, 4
mov dword [esp + 0x24], ebx
mov eax, dword [esp + 0x44]
cmp eax, ebx
mov dword [esp + 0x40], ebx
je 0x244075e
push eax
call fcn.024ad03a
add esp, 4
mov dword [esp + 0x44], ebx
mov eax, dword [esp + 0x3c]
cmp eax, ebx
mov dword [esp + 0x38], ebx
je 0x2440777
push eax
call fcn.024ad03a
add esp, 4
mov dword [esp + 0x3c], ebx
mov eax, dword [esp + 0x34]
cmp eax, ebx
mov dword [esp + 0x30], ebx
je 0x2440790
push eax
call fcn.024ad03a
add esp, 4
mov dword [esp + 0x34], ebx
mov eax, dword [esp + 0x2c]
cmp eax, ebx
mov dword [esp + 0x28], ebx
je 0x2440906
jmp 0x24408fd
lea edx, [esp + 0x28]
mov ecx, esi
mov byte [esi + 0x63], bl
call fcn.0247fc70
test eax, eax
push esi
je 0x24406f6
call fcn.024ad03a
mov eax, dword [esp + 0x50]
add esp, 4
cmp eax, ebx
mov dword [esp + 0x48], ebx
je 0x24407dd
push eax
call fcn.024ad03a
add esp, 4
mov dword [esp + 0x4c], ebx
mov eax, dword [esp + 0x24]
cmp eax, ebx
mov dword [esp + 0x20], ebx
je 0x24407f6
push eax
call fcn.024ad03a
add esp, 4
mov dword [esp + 0x24], ebx
mov eax, dword [esp + 0x44]
cmp eax, ebx
mov dword [esp + 0x40], ebx
je 0x244080b
push eax
call fcn.024ad03a
add esp, 4
lea edx, [esp + 0x28]
test edx, edx
je 0x244082f
mov edx, dword [esp + 0x28]
mov eax, dword [ebp]
mov ecx, dword [ebp + 4]
mov dword [ebp], edx
mov edx, dword [esp + 0x2c]
mov dword [ebp + 4], edx
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], ecx
mov eax, dword [esp + 0x3c]
cmp eax, ebx
mov dword [esp + 0x38], ebx
je 0x2440848
push eax
call fcn.024ad03a
add esp, 4
mov dword [esp + 0x3c], ebx
mov eax, dword [esp + 0x34]
cmp eax, ebx
mov dword [esp + 0x30], ebx
je 0x2440861
push eax
call fcn.024ad03a
add esp, 4
mov dword [esp + 0x34], ebx
mov eax, dword [esp + 0x2c]
cmp eax, ebx
mov dword [esp + 0x28], ebx
je 0x2440876
push eax
call fcn.024ad03a
add esp, 4
mov eax, 1
jmp 0x2440908
push eax
call fcn.024ad03a
add esp, 4
mov dword [esp + 0x4c], ebx
mov eax, dword [esp + 0x24]
cmp eax, ebx
mov dword [esp + 0x20], ebx
je 0x24408a6
push eax
call fcn.024ad03a
add esp, 4
mov dword [esp + 0x24], ebx
mov eax, dword [esp + 0x44]
cmp eax, ebx
mov dword [esp + 0x40], ebx
je 0x24408bf
push eax
call fcn.024ad03a
add esp, 4
mov dword [esp + 0x44], ebx
mov eax, dword [esp + 0x3c]
cmp eax, ebx
mov dword [esp + 0x38], ebx
je 0x24408d8
push eax
call fcn.024ad03a
add esp, 4
mov dword [esp + 0x3c], ebx
mov eax, dword [esp + 0x34]
cmp eax, ebx
mov dword [esp + 0x30], ebx
je 0x24408f1
push eax
call fcn.024ad03a
add esp, 4
mov dword [esp + 0x34], ebx
mov eax, dword [esp + 0x2c]
cmp eax, ebx
mov dword [esp + 0x28], ebx
je 0x2440906
push eax
call fcn.024ad03a
add esp, 4
xor eax, eax
mov ecx, dword [esp + 0x70]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x6c
ret 8