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

Disassembly:
sub esp, 0x50
push ebx
push ebp
movsd qword [esp + 0x48], xmm3
mov ebp, ecx
mov ecx, dword [esp + 0x4c]
push esi
mov esi, dword [esp + 0x4c]
mov eax, esi
or eax, ecx
mov dword [esp + 0x28], ebp
push edi
mov edi, edx
mov dword [esp + 0x5c], ebp
mov edx, dword [esp + 0x64]
mov dword [esp + 0x38], edi
mov dword [esp + 0x14], edx
mov dword [esp + 0x44], edx
mov dword [esp + 0x1c], esi
jne 0x419c17
xor ecx, ecx
mov eax, edi
test edx, edx
setne cl
sub eax, ebp
add ecx, 5
add ecx, edx
cmp eax, ecx
jge 0x419be3
mov edx, 0x84
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x50
ret 4
mov byte [ebp], 0x30
inc ebp
test edx, edx
je 0x419c01
push edx
mov byte [ebp], 0x2e
inc ebp
push 0x30
push ebp
call fcn.004235b0
add esp, 0xc
add ebp, dword [esp + 0x14]
mov dword [ebp], 0x30302b65
lea eax, [ebp + 4]
xor edx, edx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x50
ret 4
mov ebx, ecx
inc edx
and ebx, 0xfffff
shr ecx, 0x14
mov dword [esp + 0x28], ebx
mov dword [esp + 0x14], edx
test ecx, ecx
jne 0x419c49
mov eax, 0xfffffbce
mov dword [esp + 0x20], ecx
xor ebx, ebx
mov dword [esp + 0x24], eax
xor esi, esi
mov dword [esp + 0x18], ecx
jmp 0x419ebc
lea eax, [ecx - 0x433]
mov dword [esp + 0x3c], esi
mov dword [esp + 0x30], eax
or ebx, 0x100000
mov ebp, dword [esp + 0x30]
xor ecx, ecx
mov dword [esp + 0x24], ebp
xor eax, eax
mov ebp, dword [esp + 0x3c]
xor esi, esi
mov dword [esp + 0x34], ebx
xor ebx, ebx
cmp dword [esp + 0x30], 0xffffffcc
mov dword [esp + 0x1c], ebp
mov ebp, dword [esp + 0x34]
mov dword [esp + 0x28], ebp
mov ebp, dword [esp + 0x2c]
mov dword [esp + 0x20], ecx
mov dword [esp + 0x18], eax
jl 0x419e65
mov ecx, dword ds:[esp + 0x30]
test ecx, ecx
jns 0x419cb2
mov edx, 1
lea eax, [ebx + 0x78]
mov dword [esp + 0x40], edx
jmp 0x419d0e
add ecx, 0xf
shr ecx, 4
mov eax, ecx
mov dword [esp + 0x4c], ecx
imul ecx, ecx, 0x134410
shl eax, 4
add eax, 0x78
mov dword [esp + 0x48], eax
mov eax, 0x38e38e39
shr ecx, 0x12
add ecx, 0x19
mul ecx
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x30]
shr edx, 1
sub edx, 1
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0x40], edx
mov dword [esp + 0x24], ecx
mov dword [esp + 0x28], eax
js 0x419e4d
mov eax, dword [esp + 0x48]
mov esi, dword [esp + 0x4c]
mov ebx, dword [esp + 0x3c]
sub eax, ecx
mov edi, dword [esp + 0x34]
add eax, 8
mov dword [esp + 0x50], eax
mov eax, ebx
shld edi, eax, 8
mov dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x34]
shl eax, 8
mov dword [esp + 0x48], eax
lea eax, [edx + edx*8]
mov dword [esp + 0x3c], eax
movzx eax, word [esi*2 + 0x46a8a0]
add eax, edx
mov dword [esp + 0x4c], edi
mov edi, dword [esp + 0x38]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x28], ecx
lea eax, [eax + eax*2]
lea eax, [eax*8 + 0x444de0]
mov dword [esp + 0x30], eax
push dword [esp + 0x4c]
mov edx, dword [esp + 0x54]
mov ecx, eax
push dword [esp + 0x4c]
call fcn.004197c0
mov ecx, dword ds:[esp + 0x20]
mov ebx, eax
test ecx, ecx
je 0x419dbb
mov edx, dword [esp + 0x14]
lea esi, [ecx + 9]
cmp esi, edx
ja 0x419e46
mov ecx, edi
sub ecx, ebp
cmp ecx, 9
jl 0x419bcf
mov edx, ebp
mov ecx, ebx
call fcn.0041a870
add ebp, 9
mov ecx, esi
xor esi, esi
jmp 0x419e1e
xor esi, esi
test ebx, ebx
je 0x419e26
mov ecx, ebx
call fcn.00419740
mov edx, dword ds:[esp + 0x14]
mov esi, eax
mov eax, dword [esp + 0x3c]
dec eax
add eax, esi
mov dword [esp + 0x18], eax
cmp esi, edx
ja 0x419e57
cmp dword [esp + 0x44], 0
jbe 0x419e0b
mov ecx, edi
lea eax, [esi + 1]
sub ecx, ebp
cmp ecx, eax
jl 0x419bcf
push ebp
mov edx, ebx
mov ecx, esi
lfence
call fcn.00419aa0
add ebp, esi
jmp 0x419e19
cmp ebp, edi
je 0x419bcf
lea eax, [ebx + 0x30]
mov byte [ebp], al
mov ecx, esi
xor esi, esi
inc ebp
mov dword [esp + 0x2c], ebp
mov dword [esp + 0x20], ecx
mov eax, dword [esp + 0x40]
sub dword [esp + 0x30], 0x18
dec eax
sub dword [esp + 0x3c], 9
mov dword [esp + 0x40], eax
test eax, eax
js 0x419e5d
mov eax, dword [esp + 0x30]
jmp 0x419d63
mov esi, 9
jmp 0x419e61
mov edx, dword [esp + 0x14]
xor ecx, ecx
xor eax, eax
jmp 0x419e65
mov ecx, dword [esp + 0x20]
jmp 0x419e65
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
cmp dword [esp + 0x24], 0
mov dword [esp + 0x40], esi
jge 0x41a02c
mov edi, dword [esp + 0x1c]
mov dword [esp + 0x18], eax
mov dword [esp + 0x50], ebx
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x24]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x28]
mov dword [esp + 0x1c], edi
mov edi, dword [esp + 0x38]
mov dword [esp + 0x20], ecx
mov dword [esp + 0x2c], ebp
mov dword [esp + 0x28], eax
mov dword [esp + 0x14], edx
test esi, esi
jne 0x41a02c
mov eax, dword [esp + 0x24]
cdq
and edx, 0xf
add eax, edx
sar eax, 4
neg eax
mov dword [esp + 0x4c], eax
movzx edx, byte [eax + 0x46aa80]
cmp edx, 0xc8
jae 0x41a02c
movzx ebx, word [eax*2 + 0x46a922]
lea edx, [edx + edx*8]
mov dword [esp + 0x50], ebx
movzx ebx, word [eax*2 + 0x46a920]
mov dword [esp + 0x34], edx
mov dword [esp + 0x40], ebx
lea eax, [ebx + ebx*2]
lea eax, [eax*8 + 0x44c0a0]
mov dword [esp + 0x30], eax
nop dword [eax + eax]
cmp ebx, dword [esp + 0x50]
jb 0x419f1a
xor ebx, ebx
jmp 0x419f53
mov ecx, dword ds:[esp + 0x1c]
mov edx, 8
mov eax, dword [esp + 0x28]
sub edx, dword [esp + 0x4c]
shld eax, ecx, 8
shl edx, 4
sub edx, dword [esp + 0x24]
shl ecx, 8
push eax
push ecx
mov ecx, dword [esp + 0x38]
call fcn.004197c0
mov ecx, dword [esp + 0x20]
mov ebx, eax
mov edx, dword [esp + 0x34]
mov eax, dword [esp + 0x30]
test ecx, ecx
je 0x419f92
mov eax, dword [esp + 0x14]
add ecx, 9
mov dword [esp + 0x48], ecx
cmp ecx, eax
ja 0x41a025
mov eax, edi
sub eax, ebp
cmp eax, 9
jl 0x419bcf
mov edx, ebp
mov ecx, ebx
call fcn.0041a870
mov ecx, dword [esp + 0x48]
add ebp, 9
mov edx, dword [esp + 0x34]
jmp 0x419ff5
test ebx, ebx
je 0x41a001
mov ecx, ebx
call fcn.00419740
mov esi, eax
mov eax, dword [esp + 0x14]
mov ecx, esi
sub ecx, edx
sub ecx, 0xa
mov dword [esp + 0x18], ecx
cmp esi, eax
ja 0x41a034
cmp dword [esp + 0x44], 0
jbe 0x419fe2
mov ecx, edi
lea eax, [esi + 1]
sub ecx, ebp
cmp ecx, eax
jl 0x419bcf
push ebp
mov edx, ebx
mov ecx, esi
lfence
call fcn.00419aa0
mov edx, dword ds:[esp + 0x34]
add ebp, esi
jmp 0x419ff0
cmp ebp, edi
je 0x419bcf
lea eax, [ebx + 0x30]
mov byte [ebp], al
mov ecx, esi
xor esi, esi
inc ebp
mov eax, dword [esp + 0x30]
mov dword [esp + 0x2c], ebp
mov dword [esp + 0x20], ecx
inc dword [esp + 0x40]
add edx, 9
add eax, 0x18
mov dword [esp + 0x34], edx
mov dword [esp + 0x30], eax
cmp edx, 0x708
jge 0x41a02c
mov ebx, dword ds:[esp + 0x40]
jmp 0x419f10
mov esi, 9
jmp 0x41a030
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, eax
xor eax, eax
sub edx, dword [esp + 0x20]
test esi, esi
mov dword [esp + 0x34], edx
cmovne eax, ebx
mov dword [esp + 0x40], eax
xor eax, eax
mov ebx, dword [esp + 0x40]
cmp esi, edx
jbe 0x41a1f1
sub esi, edx
mov edx, ebx
je 0x41a1f1
mov eax, 0xcccccccd
mov edi, ebx
mul ebx
shr edx, 3
mov ebx, edx
lea eax, [edx + edx*4]
add eax, eax
sub edi, eax
mov dword [esp + 0x50], edi
sub esi, 1
jne 0x41a066
cmp edi, 5
mov dword [esp + 0x4c], ebx
mov edi, dword [esp + 0x38]
jne 0x41a1ed
mov eax, dword [esp + 0x14]
sub eax, ecx
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x14], eax
lea edx, [eax + ecx]
neg edx
test edx, edx
jle 0x41a0eb
cmp edx, 0x3c
jge 0x41a0e3
xor ecx, ecx
xor eax, eax
bts ecx, edx
cmp edx, 0x20
cmovae eax, ecx
xor ecx, eax
cmp edx, 0x40
mov edx, dword [esp + 0x1c]
cmovae eax, ecx
add ecx, 0xffffffff
adc eax, 0xffffffff
and ecx, edx
and eax, dword [esp + 0x28]
or ecx, eax
mov eax, dword [esp + 0x14]
je 0x41a0ef
xor cl, cl
jmp 0x41a0f1
mov edx, dword [esp + 0x1c]
xor cl, cl
jmp 0x41a0f1
mov edx, dword [esp + 0x1c]
mov cl, 1
test eax, eax
jns 0x41a1e7
neg eax
mov dword [esp + 0x14], eax
test cl, cl
je 0x41a1e5
mov eax, 0xcccccccd
mov dword [esp + 0x3c], 0
mul edx
mov eax, 0xcccccccd
xor esi, esi
mov ecx, edx
mul dword [esp + 0x28]
add ecx, eax
mov eax, 0xcccccccc
adc esi, edx
mul dword [esp + 0x1c]
add eax, ecx
mov dword [esp + 0x40], edx
mov ecx, edx
mov eax, 0xcccccccc
adc ecx, 0
mul dword [esp + 0x28]
add ecx, eax
mov eax, 0
adc eax, edx
add ecx, esi
adc eax, 0
shrd ecx, eax, 2
shr eax, 2
mov dword [esp + 0x40], ecx
mov dword [esp + 0x50], eax
lea eax, [ecx + ecx*4]
mov ecx, dword [esp + 0x1c]
sub ecx, eax
jne 0x41a1d3
mov ebp, dword [esp + 0x40]
mov ecx, dword [esp + 0x50]
inc dword [esp + 0x3c]
mov edi, ecx
mov eax, 0xcccccccd
xor esi, esi
mul ebp
mov eax, 0xcccccccd
mov ebx, ebp
mov ecx, edx
mul edi
add ecx, eax
mov eax, 0xcccccccc
adc esi, edx
mul ebp
add eax, ecx
mov ebp, edx
mov eax, 0xcccccccc
adc ebp, 0
xor ecx, ecx
mul edi
add ebp, eax
adc ecx, edx
add ebp, esi
adc ecx, 0
shrd ebp, ecx, 2
shr ecx, 2
lea eax, [ebp*4]
add eax, ebp
sub ebx, eax
je 0x41a175
mov ebp, dword [esp + 0x2c]
mov edi, dword [esp + 0x38]
mov ebx, dword [esp + 0x4c]
mov eax, dword [esp + 0x3c]
cmp eax, dword [esp + 0x14]
jb 0x41a1e5
mov cl, 1
movzx esi, cl
inc esi
jmp 0x41a1fc
xor cl, cl
movzx esi, cl
inc esi
jmp 0x41a1fc
mov eax, dword [esp + 0x50]
mov ecx, 5
cmp ecx, eax
sbb esi, esi
neg esi
cmp dword [esp + 0x20], 0
je 0x41a23f
mov ecx, dword [esp + 0x34]
mov eax, edi
sub eax, ebp
cmp eax, ecx
jl 0x419bcf
test ebx, ebx
jne 0x41a22e
push ecx
push 0x30
push ebp
call fcn.004235b0
add esp, 0xc
add ebp, dword [esp + 0x34]
jmp 0x41a27c
push ebp
mov edx, ebx
lfence
call fcn.0041a900
add ebp, dword [esp + 0x34]
jmp 0x41a27c
cmp dword [esp + 0x44], 0
jbe 0x41a26d
mov eax, dword [esp + 0x34]
mov ecx, edi
sub ecx, ebp
inc eax
cmp ecx, eax
jl 0x419bcf
mov ecx, dword [esp + 0x34]
mov edx, ebx
push ebp
lfence
call fcn.00419aa0
inc ebp
add ebp, dword [esp + 0x34]
jmp 0x41a27c
cmp ebp, edi
je 0x419bcf
add bl, 0x30
mov byte [ebp], bl
inc ebp
nop dword [eax]
test esi, esi
je 0x41a2c2
mov edx, dword [esp + 0x5c]
mov eax, ebp
cmp ebp, edx
je 0x41a2aa
nop
mov cl, byte [eax - 1]
dec eax
cmp cl, 0x2e
je 0x41a2a6
cmp cl, 0x39
jne 0x41a2b4
mov byte [eax], 0x30
mov esi, 1
cmp eax, edx
jne 0x41a290
mov esi, dword [esp + 0x18]
mov byte [eax], 0x31
inc esi
jmp 0x41a2c6
cmp esi, 1
je 0x41a2be
test cl, 1
je 0x41a2c2
inc cl
mov byte [eax], cl
mov esi, dword [esp + 0x18]
mov eax, esi
mov ecx, edi
cdq
mov ebx, eax
xor ebx, edx
sub ebx, edx
xor edx, edx
cmp ebx, 0x64
setge dl
sub ecx, ebp
add edx, 4
cmp ecx, edx
jl 0x419bcf
test esi, esi
mov byte [ebp], 0x65
sets al
lea eax, [eax*2 + 0x2b]
mov byte [ebp + 1], al
cmp ebx, 0x64
jl 0x41a344
mov eax, 0x66666667
imul ebx
sar edx, 2
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov ax, word [ecx*2 + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899]
mov word [ebp + 2], ax
mov al, cl
shl cl, 2
add al, cl
add al, al
sub bl, al
add bl, 0x30
mov byte [ebp + 4], bl
add ebp, 5
mov eax, ebp
xor edx, edx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x50
ret 4
mov ax, word [ebx*2 + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899]
mov word ss:[ebp + 2], ax
add ebp, 4
pop edi
pop esi
mov eax, ebp
xor edx, edx
pop ebp
pop ebx
add esp, 0x50
ret 4