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

Disassembly:
sub esp, 0x78
mov eax, dword [esp + 0x7c]
push ebx
push ebp
push esi
xor ebx, ebx
or esi, 0xffffffff
mov dword [esp + 0x30], ebx
mov dword [esp + 0x2c], esi
mov dword [esp + 0x28], esi
mov dword [esp + 0x1c], esi
mov dl, byte [eax]
mov ecx, esi
test dl, dl
push edi
mov dword [esp + 0x38], esi
mov dword [esp + 0x1c], esi
mov dword [esp + 0x18], esi
mov dword [esp + 0x14], ecx
mov ebp, esi
mov dword [esp + 0x24], ebx
mov dword [esp + 0x40], eax
mov dword [esp + 0x28], ebx
je 0x4203cc
cmp dword [esp + 0x28], 6
jge 0x4203c0
lea eax, [esp + 0x8c]
mov byte [esp + 0x13], 0
push eax
call fcn.004205a0
mov ecx, dword [sym.imp.MSVCRT.dll___mb_cur_max]
add esp, 4
cmp dword [ecx], 1
jle 0x4200e7
mov edx, dword [esp + 0x8c]
push 0x103
movsx eax, byte [edx]
push eax
call dword [sym.imp.MSVCRT.dll__isctype]
mov edx, dword [esp + 0x94]
add esp, 8
jmp 0x420101
mov edx, dword [esp + 0x8c]
mov eax, dword [sym.imp.MSVCRT.dll__pctype]
movsx ecx, byte [edx]
mov eax, dword [eax]
mov ax, word [eax + ecx*2]
and eax, 0x103
cmp eax, ebx
je 0x4201af
mov cl, byte [0x42d680]
xor eax, eax
mov byte [esp + 0x44], cl
mov ecx, 7
lea edi, [esp + 0x45]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
lea eax, [esp + 0x44]
push eax
push 0x42cd80
push edx
call dword [sym.imp.MSVCRT.dll_sscanf]
lea edi, [esp + 0x50]
mov ecx, esi
xor eax, eax
add esp, 0xc
repne scasb al, byte es:[edi]
mov eax, dword [esp + 0x38]
or edi, 0xffffffff
not ecx
dec ecx
cmp eax, edi
mov esi, ecx
jne 0x420167
lea ecx, [esp + 0x44]
push esi
push ecx
call fcn.004204d0
add esp, 8
cmp eax, edi
mov dword [esp + 0x38], eax
jne 0x4201a1
cmp dword [esp + 0x1c], edi
jne 0x420182
lea edx, [esp + 0x44]
push edx
call fcn.00420520
add esp, 4
cmp eax, edi
mov dword [esp + 0x1c], eax
jne 0x4201a1
cmp ebp, edi
jne 0x4203ac
lea eax, [esp + 0x44]
push eax
call fcn.00420560
mov ebp, eax
add esp, 4
cmp ebp, edi
je 0x4203ac
mov edx, dword [esp + 0x8c]
add edx, esi
jmp 0x42038e
mov ecx, dword [sym.imp.MSVCRT.dll___mb_cur_max]
cmp dword [ecx], 1
jle 0x4201d2
movsx edx, byte [edx]
push 4
push edx
call dword [sym.imp.MSVCRT.dll__isctype]
mov edx, dword [esp + 0x94]
add esp, 8
jmp 0x4201e3
mov ecx, dword [sym.imp.MSVCRT.dll__pctype]
movsx eax, byte [edx]
mov ecx, dword [ecx]
mov al, byte [ecx + eax*2]
and eax, 4
cmp eax, ebx
je 0x420398
cmp dword [esp + 0x20], esi
jne 0x42022a
lea eax, [esp + 0x20]
lea ecx, [esp + 0x2c]
push eax
lea eax, [esp + 0x34]
push ecx
push eax
push 0x42cd70
push edx
call dword [sym.imp.MSVCRT.dll_sscanf]
mov edx, dword [esp + 0xa0]
add esp, 0x14
cmp eax, 3
jne 0x42022a
add edx, 8
mov dword [esp + 0x8c], edx
jmp 0x420398
lea ecx, [esp + 0x3c]
push 0xa
push ecx
push edx
call dword [sym.imp.MSVCRT.dll_strtol]
add esp, 0xc
cmp ebp, esi
mov esi, dword [esp + 0x8c]
mov ecx, eax
jne 0x4202a9
mov edx, dword [esp + 0x3c]
sub edx, esi
cmp edx, 4
jne 0x4202a9
cmp ecx, 0x514
jge 0x4202a9
cmp dword [esp + 0x40], esi
jae 0x4202a9
mov bl, byte [esi - 1]
cmp bl, 0x2b
je 0x42026e
cmp bl, 0x2d
jne 0x4202a7
mov eax, 0x51eb851f
mov ebp, 0x64
imul ecx
sar edx, 5
mov eax, edx
mov byte [esp + 0x13], 1
shr eax, 0x1f
add edx, eax
lea eax, [edx + edx*2]
lea edi, [eax + eax*4]
mov eax, ecx
cdq
idiv ebp
lea eax, [edx + edi*4]
lea eax, [eax + eax*2]
lea ebp, [eax + eax*4]
shl ebp, 2
cmp bl, 0x2b
jne 0x4202a7
neg ebp
xor ebx, ebx
mov edi, dword [esp + 0x3c]
mov edx, edi
sub edx, esi
cmp edx, 8
jne 0x420313
mov eax, dword [esp + 0x14]
or edx, 0xffffffff
cmp eax, edx
jne 0x420316
cmp dword [esp + 0x1c], edx
jne 0x420316
cmp dword [esp + 0x18], edx
jne 0x420316
mov eax, 0x68db8bad
mov esi, 0x2710
imul ecx
sar edx, 0xc
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, ecx
mov dword [esp + 0x14], edx
cdq
idiv esi
mov eax, 0x51eb851f
imul edx
sar edx, 5
mov eax, edx
shr eax, 0x1f
lea edx, [edx + eax - 1]
mov eax, ecx
mov dword [esp + 0x1c], edx
mov ecx, 0x64
cdq
idiv ecx
mov dword [esp + 0x18], edx
jmp 0x42038c
or edx, 0xffffffff
mov al, byte [esp + 0x13]
test al, al
jne 0x42038c
mov eax, dword [esp + 0x24]
cmp eax, ebx
jne 0x420354
cmp dword [esp + 0x18], edx
jne 0x4203b6
cmp ecx, ebx
jle 0x420342
cmp ecx, 0x20
jge 0x420342
mov dword [esp + 0x18], ecx
mov byte [esp + 0x13], 1
mov al, byte [esp + 0x13]
mov dword [esp + 0x24], 1
test al, al
jne 0x42038c
jmp 0x420359
cmp eax, 1
jne 0x4203b6
cmp dword [esp + 0x14], edx
jne 0x4203b6
cmp ecx, 0x76c
mov dword [esp + 0x14], ecx
jge 0x420382
cmp ecx, 0x46
jle 0x420378
add ecx, 0x76c
jmp 0x42037e
add ecx, 0x7d0
mov dword [esp + 0x14], ecx
cmp dword [esp + 0x18], edx
jne 0x42038c
mov dword [esp + 0x24], ebx
mov edx, edi
mov dword [esp + 0x8c], edx
or esi, 0xffffffff
mov ecx, dword [esp + 0x28]
mov al, byte [edx]
inc ecx
test al, al
mov dword [esp + 0x28], ecx
je 0x4203c0
jmp 0x42009a
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x78
ret
pop edi
pop esi
pop ebp
mov eax, edx
pop ebx
add esp, 0x78
ret
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x14]
cmp eax, esi
jne 0x4203da
xor eax, eax
mov dword [esp + 0x30], ebx
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x20], eax
mov edi, dword [esp + 0x18]
cmp edi, esi
je 0x4204b7
mov edx, dword [esp + 0x1c]
cmp edx, esi
je 0x4204b7
cmp ecx, esi
je 0x4204b7
cmp ecx, 0x7f5
jle 0x42040f
pop edi
pop esi
pop ebp
mov eax, bind
pop ebx
add esp, 0x78
ret
mov esi, dword [sym.imp.MSVCRT.dll_mktime]
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0x2c]
add ecx, 0xfffff894
mov dword [esp + 0x78], ecx
mov dword [esp + 0x68], eax
mov eax, dword [esp + 0x30]
lea ecx, [esp + 0x64]
push ecx
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], edi
mov dword [esp + 0x78], edx
mov dword [esp + 0x80], ebx
mov dword [esp + 0x84], ebx
mov dword [esp + 0x88], ebx
call esi
add esp, 4
cmp eax, 0xffffffff
mov dword [esp + 0x34], eax
je 0x4204b9
lea edx, [esp + 0x34]
push edx
call dword [sym.imp.MSVCRT.dll_gmtime]
add esp, 4
cmp eax, ebx
jne 0x420480
pop edi
pop esi
pop ebp
or eax, 0xffffffff
pop ebx
add esp, 0x78
ret
push eax
call esi
mov ecx, ebp
add esp, 4
inc ecx
neg ecx
sbb ecx, ecx
and ecx, ebp
sub ecx, eax
mov eax, dword [esp + 0x34]
add ecx, eax
cmp ecx, ebx
jle 0x4204ad
lea edx, [ecx + eax]
cmp edx, eax
jge 0x4204ad
pop edi
pop esi
pop ebp
or eax, 0xffffffff
pop ebx
add esp, 0x78
ret
pop edi
pop esi
pop ebp
add eax, ecx
pop ebx
add esp, 0x78
ret
mov eax, esi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x78
ret