Function at 0x44f830
Capabilities:
Check for software breakpoints
Parse credit card information

Disassembly:
push edi
lea edi, [esp + 8]
and esp, 0xfffffff0
push dword [edi - 4]
push ebp
mov ebp, esp
push edi
push esi
mov esi, ecx
push ebx
sub esp, 0x7c
mov edi, dword [ecx + 0x20]
mov dword [ecx], edi
movzx ebx, byte [edi]
cmp bl, 0x3e
ja case.default.0x44f856
movzx eax, bl
jmp dword [eax*4 + 0x5894c0]
cmp bl, 0x5d
jbe 0x44f8d0
lea eax, [ebx - 0x5e]
cmp al, 0x21
ja case.0x44f856.9
lea eax, [ebx - 0x5f]
cmp al, 0x20
ja case.default.0x44f87e
movzx eax, al
jmp dword [eax*4 + 0x5895bc]
mov ecx, dword [esi + 0x24]
lea ebx, [edi + 1]
movd xmm0, edi
lea edx, [ebp - 0x38]
movd xmm4, ebx
mov eax, dword [ecx]
punpckldq xmm0, xmm4
movq qword [ebp - 0x38], xmm0
mov dword [esp + 4], edx
mov dword [esp], 0x181
call dword [eax + 8]
mov dword [esi + 0x20], ebx
mov ecx, esi
sub esp, 8
call fcn.00449fd0
xor eax, eax
jmp 0x44f995
lea ecx, [ebx - 0x3f]
mov eax, 1
shl eax, cl
test eax, 0x2ffffffc
jne case.0x44f87e.0
test eax, 0x50000002
jne case.0x44f87e.28
movzx edx, byte [edi + 1]
cmp dl, 0x3f
je 0x44fbd0
lea eax, [edi + 1]
mov ecx, 0x3f
cmp dl, 0x2e
je 0x45030f
lea esi, [esi]
mov dword [esi + 8], ecx
mov dword [esi + 0x20], eax
mov dword [esi + 4], eax
jmp 0x44f990
mov dword [esp + 8], 0
lea ecx, [ebp - 0x38]
mov dword [esp + 4], edi
mov dword [esp], esi
call fcn.0044efb0
mov ecx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x34]
mov edx, dword [ebp - 0x30]
sub esp, 0xc
mov ebx, dword [ebp - 0x2c]
mov dword [esi + 0x20], ecx
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], edx
mov dword [esi + 4], ecx
call fcn.00465c60
mov dword [esi + 8], eax
test ebx, ebx
je 0x44f990
mov ecx, dword [ebx]
cmp dword [ebx + 4], ecx
je 0x44f990
cmp eax, 0xe4
jg 0x4506a7
cmp eax, 0xc5
jg 0x450645
cmp eax, 0x81
jne 0x45097a
lea esi, cs:[esi]
nop
mov eax, 1
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
lea esp, [edi - 8]
pop edi
ret
mov dword [ecx + 8], 0x83
cmp bl, 0x30
jne 0x450108
movzx eax, byte [edi + 1]
cmp al, 0x58
je 0x45070a
ja 0x45032c
cmp al, 0x42
je 0x450344
ja 0x4500fd
sub eax, 0x30
cmp al, 9
ja 0x450108
add edi, 1
mov dword [ecx + 0x20], edi
lea esi, [esi]
movzx eax, byte [edi]
mov edx, eax
sub eax, 0x30
cmp eax, 7
ja 0x44fa0e
movzx eax, byte [edi + 1]
add edi, 1
mov edx, eax
sub eax, 0x30
cmp eax, 7
jbe 0x44f9fd
cmp dl, 0x5f
jne 0x450888
mov ebx, edi
lea esi, [esi]
add ebx, 1
cmp byte [ebx], 0x5f
je 0x44fa20
mov ecx, dword [esi + 0x24]
mov dword [ebp - 0x38], edi
lea edi, [ebp - 0x38]
mov dword [ebp - 0x34], ebx
mov eax, dword [ecx]
mov dword [esp + 4], edi
mov edi, ebx
mov dword [esp], 0x9b
call dword [eax + 8]
sub esp, 8
jmp 0x44f9f0
movzx eax, bl
add edi, 1
mov dword [esi + 8], eax
mov dword [esi + 0x20], edi
mov dword [esi + 4], edi
jmp 0x44f990
mov ecx, dword [esi + 0x2c]
add ecx, dword [esi + 0x28]
mov edx, edi
lea eax, [ebp - 0x44]
sub ecx, edi
call fcn.00472e70
mov eax, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x44]
lea edx, [eax - 0x2018]
cmp edx, 1
jbe 0x450403
cmp eax, 0x201c
je 0x450403
mov edx, 0x55d060
cmp eax, 0x201d
jne 0x44fabf
jmp 0x4505f0
add edx, 0x54
cmp edx, 0x55eaa0
je 0x450668
cmp eax, dword [edx]
jne 0x44fab0
lea eax, [edi + ecx]
movd xmm5, edi
mov ebx, dword [esi + 0x24]
lea edi, [edx + 4]
mov dword [esi + 0x20], eax
movd xmm7, eax
mov dword [esi + 4], eax
mov eax, dword [edx + 0x50]
punpckldq xmm5, xmm7
movq qword [ebp - 0x68], xmm5
mov dword [esi + 8], eax
cmp byte [edx + 4], 0
je 0x450bc4
lea eax, [edx + 5]
mov dword [ebp - 0x5c], edx
mov dword [esp], eax
call sub.msvcrt.dll_strlen
mov edx, dword [ebp - 0x5c]
lea ecx, [eax + 1]
movzx eax, byte [edx + 0x37]
cmp byte [edx + 0x38], 0
lea esi, [edx + 0x38]
mov byte [ebp - 0x5c], al
je 0x450bbd
add edx, 0x39
mov dword [ebp - 0x60], ecx
mov dword [esp], edx
call sub.msvcrt.dll_strlen
mov ecx, dword [ebp - 0x60]
add eax, 1
mov dword [ebp - 0x30], ecx
movzx ecx, byte [ebp - 0x5c]
lea edx, [ebp - 0x38]
mov dword [ebp - 0x24], eax
movq xmm3, qword [ebp - 0x68]
mov byte [ebp - 0x28], cl
mov eax, dword [ebx]
mov ecx, ebx
mov dword [ebp - 0x2c], edi
mov dword [ebp - 0x20], esi
movq qword [ebp - 0x38], xmm3
mov dword [esp + 4], edx
mov dword [esp], 0x5a
call dword [eax + 8]
sub esp, 8
jmp 0x44f990
lea ecx, [edi + 1]
movzx eax, byte [edi + 1]
mov edi, ecx
cmp al, 0x27
ja case.default.0x44fb84
movzx edx, al
jmp dword [edx*4 + 0x589640]
lea ecx, [eax - 0x61]
cmp cl, 5
ja 0x4502ab
movzx ecx, byte [edi + 3]
cmp cl, 0x46
ja 0x450bcb
cmp cl, 0x40
ja 0x450055
sub ecx, 0x30
cmp cl, 9
ja 0x4502ab
mov edi, edx
lea esi, cs:[esi]
movzx eax, byte [edi + 1]
add edi, 1
jmp 0x44fb79
cmp byte [edi + 2], 0x3d
lea eax, [edi + 2]
mov ecx, 0xa3
jne 0x44f910
lea eax, [edi + 3]
mov ecx, 0xa4
jmp 0x44f910
movzx edx, byte [edi + 1]
lea eax, [edi + 2]
mov ecx, 0x8a
cmp dl, 0x3d
je 0x44f910
lea eax, [edi + 1]
mov ecx, 0x26
cmp dl, 0x26
jne 0x44f910
cmp byte [edi + 2], 0x3d
lea eax, [edi + 2]
mov ecx, 0x88
jne 0x44f910
lea eax, [edi + 3]
mov ecx, 0x89
jmp 0x44f910
cmp byte [edi + 1], 0x3d
lea eax, [edi + 1]
mov edx, 0x25
jne 0x44fc50
lea eax, [edi + 2]
mov edx, 0x9c
nop
mov dword [esi + 0x20], eax
mov dword [esi + 8], edx
mov dword [esi + 4], eax
jmp 0x44f990
mov eax, dword [ecx + 0x2c]
add eax, dword [ecx + 0x28]
cmp edi, eax
jne case.0x44f87e.32
mov dword [ecx + 8], pe_nt_image_headers32
mov dword [esi + 4], edi
jmp 0x44f990
movzx eax, byte [edi + 1]
cmp al, 0x21
je 0x4501a8
cmp al, 0x3d
je 0x450255
cmp al, 0x3c
jne 0x450188
cmp byte [edi + 2], 0x3d
lea eax, [edi + 2]
mov edx, 0x98
jne 0x44fcb8
lea eax, [edi + 3]
mov edx, 0x99
lea esi, [esi]
mov dword [esi + 8], edx
mov dword [esi + 0x20], eax
mov dword [esi + 4], eax
jmp 0x44f990
cmp byte [edi + 1], 0x3d
lea eax, [edi + 1]
mov edx, 0x21
jne 0x44fcb8
cmp byte [edi + 2], 0x3d
lea eax, [edi + 2]
mov edx, 0x8b
jne 0x44fcb8
lea eax, [edi + 3]
mov edx, 0x8c
jmp 0x44fcb8
movzx edx, byte [edi + 1]
lea eax, [edi + 2]
mov ecx, 0x92
cmp dl, 0x3d
je 0x44f910
lea eax, [edi + 1]
mov ecx, 0x3e
cmp dl, 0x3e
jne 0x44f910
movzx edx, byte [edi + 2]
cmp dl, 0x3e
je 0x450997
lea eax, [edi + 2]
mov ecx, 0x93
cmp dl, 0x3d
jne 0x44f910
lea eax, [edi + 3]
mov ecx, 0x94
jmp 0x44f910
movzx edx, byte [edi + 1]
cmp dl, 0x3d
je 0x4501f0
lea eax, [edi + 1]
mov ecx, 0x3d
cmp dl, 0x3e
jne 0x44f910
lea eax, [edi + 2]
mov ecx, 0x91
jmp 0x44f910
movzx eax, byte [edi + 1]
cmp al, 0x21
je 0x450120
lea edx, [edi + 1]
cmp al, 0x7a
ja 0x4502e0
cmp al, 0x5b
jbe 0x4505d1
sub eax, 0x5c
mov ecx, 0x7fffffe9
bt ecx, eax
jae 0x45012c
mov dword [esp + 4], edx
lea ecx, [ebp - 0x38]
mov dword [esp + 8], 0
mov dword [esp], esi
call fcn.0044efb0
mov ebx, dword [esi + 0x20]
mov eax, dword [ebp - 0x30]
mov edx, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x34]
sub esp, 0xc
lea edi, [ebx + 1]
cmp eax, edi
je 0x450540
mov dword [esi + 0x20], edx
mov dword [esi + 0x10], ecx
mov dword [esi + 0x14], eax
mov dword [esi + 4], edx
mov dword [esi + 8], 0x84
jmp 0x44f990
movzx eax, byte [edi + 1]
lea edx, [edi + 2]
mov ecx, 0xa5
cmp al, 0x3d
je 0x44fe30
cmp al, 0x2a
je 0x4509b6
lea edx, [edi + 1]
mov ecx, 0x2f
cmp al, 0x2f
je 0x450874
mov dword [esi + 8], ecx
mov dword [esi + 0x20], edx
mov dword [esi + 4], edx
jmp 0x44f990
movzx edx, byte [edi + 1]
cmp dl, 0x2d
je 0x4501d0
lea eax, [edi + 1]
mov ecx, 0x2d
cmp dl, 0x3d
jne 0x44f910
lea eax, [edi + 2]
mov ecx, 0x9a
jmp 0x44f910
movzx edx, byte [edi + 1]
lea eax, [edi + 2]
mov ecx, 0xa1
cmp dl, 0x2b
je 0x44f910
lea eax, [edi + 1]
mov ecx, 0x2b
cmp dl, 0x3d
jne 0x44f910
lea eax, [edi + 2]
mov ecx, 0xa0
jmp 0x44f910
movzx edx, byte [edi + 1]
cmp dl, 0x2a
je 0x450230
cmp dl, 0x3d
je 0x450300
lea eax, [edi + 1]
cmp dl, 0x2f
je 0x450918
mov dword [ecx + 8], 0x2a
lea esi, [esi]
mov dword [esi + 0x20], eax
mov dword [esi + 4], eax
jmp 0x44f990
movzx eax, byte [edi + 1]
cmp al, 0x2e
je 0x450210
sub eax, 0x30
cmp eax, 9
ja 0x450170
mov dword [ecx + 8], 0x83
call fcn.0044f480
mov edi, dword [esi + 0x20]
jmp 0x44fc75
lea edx, [edi + 1]
cmp bl, al
je 0x450db8
movzx eax, byte [edi + 1]
mov edi, edx
jmp 0x44fb79
mov dword [ebp - 0x5c], edi
movzx edx, byte [edi + 1]
cmp al, 0xd
je 0x450268
mov eax, dword [ebp - 0x5c]
add eax, 1
xor edi, edi
jmp 0x44ff6f
cmp dl, 0xd
je 0x4500c0
cmp dl, 0xa
je 0x4500c0
test dl, dl
jne 0x44ff6c
mov edx, dword [esi + 0x2c]
add edx, dword [esi + 0x28]
cmp eax, edx
je 0x4500c0
add eax, 1
movzx edx, byte [eax]
mov ecx, eax
cmp bl, dl
jne 0x44ff48
test edi, edi
jne 0x4500cc
movzx edx, byte [eax + 1]
add eax, 1
cmp bl, dl
je 0x4500cc
mov edi, ecx
jmp 0x44ff48
mov edx, dword [esi + 0x24]
lea eax, [edi + 1]
lea ecx, [ebp - 0x38]
mov dword [esi + 0x20], eax
mov dword [esp + 4], eax
mov dword [esp + 0xc], edx
mov dword [esp + 8], edi
mov dword [esp], esi
call fcn.0044e360
mov eax, dword [ebp - 0x30]
sub esp, 0x10
mov dword [esi + 0x18], eax
mov eax, dword [ebp - 0x38]
mov dword [esi + 8], eax
mov eax, dword [ebp - 0x34]
jmp 0x44fed8
movzx edx, byte [edi + 1]
lea eax, [edi + 2]
mov ecx, 0x9d
cmp dl, 0x3d
je 0x44f910
lea eax, [edi + 1]
mov ecx, 0x7c
cmp dl, 0x7c
jne 0x44f910
cmp byte [edi + 2], 0x3d
lea eax, [edi + 2]
mov ecx, 0x9e
jne 0x44f910
lea eax, [edi + 3]
mov ecx, 0x9f
jmp 0x44f910
mov eax, dword [esi + 0x2c]
add eax, dword [esi + 0x28]
cmp edi, eax
jne case.0x44fb84.1
movd xmm0, dword [esi + 0x20]
movd xmm3, edi
mov ecx, dword [esi + 0x24]
mov dword [ebp - 0x5c], edi
punpckldq xmm0, xmm3
movq qword [esp], xmm0
call fcn.00419080
sub esp, 8
nop
mov eax, dword [ebp - 0x5c]
mov dword [esi + 8], 0x86
mov dword [esi + 0x20], eax
mov dword [esi + 4], eax
jmp 0x44f990
mov edi, edx
lea esi, cs:[esi]
nop
cmp al, 0x5c
jne case.0x44fb84.1
movzx eax, byte [edi + 1]
cmp al, 0x75
je 0x450588
ja 0x450280
test al, al
je 0x45054a
cmp al, 0xd
jne 0x450198
movzx eax, byte [edi + 2]
cmp al, 0xa
je 0x450bb1
add edi, 2
jmp 0x44fb79
cmp byte [edi + 1], 0x3d
lea eax, [edi + 1]
mov edx, 0x5e
jne 0x44fc50
lea eax, [edi + 2]
mov edx, 0x8d
jmp 0x44fc50
lea eax, [edi + 1]
test edi, edi
cmove eax, dword [ebp - 0x5c]
mov dword [ebp - 0x5c], eax
mov ecx, dword [esi + 0x24]
movd xmm0, dword [esi + 0x20]
lea edx, [ebp - 0x38]
movd xmm6, dword [ebp - 0x5c]
mov eax, dword [ecx]
punpckldq xmm0, xmm6
movq qword [ebp - 0x38], xmm0
mov dword [esp + 4], edx
mov dword [esp], 0x179
call dword [eax + 8]
sub esp, 8
jmp 0x450040
cmp al, 0x4f
je 0x4507b3
lea esi, [esi]
mov ecx, esi
call fcn.0044f480
mov ebx, dword [esi + 0x20]
mov dword [esi + 4], ebx
jmp 0x44f990
cmp edi, dword [ecx + 0x28]
je 0x450874
lea edx, [edi + 1]
mov ecx, dword [esi + 0x24]
movd xmm2, edx
movd xmm0, edi
lea edx, [ebp - 0x38]
punpckldq xmm0, xmm2
mov eax, dword [ecx]
movq qword [ebp - 0x38], xmm0
mov dword [esp + 4], edx
mov dword [esp], 0x196
call dword [eax + 8]
add dword [esi + 0x20], 1
mov ecx, esi
sub esp, 8
call fcn.00449fd0
xor eax, eax
jmp 0x44f995
add edi, 1
mov dword [esi + 8], 0x2e
mov dword [esi + 0x20], edi
jmp 0x44fc75
lea eax, [edi + 1]
mov edx, 0x3c
jmp 0x44fcb8
movzx eax, byte [edi + 2]
add edi, 2
jmp 0x44fb79
cmp byte [edi + 2], 0x2d
jne 0x450188
cmp byte [edi + 3], 0x2d
jne 0x450188
add edi, 4
mov dword [ecx + 0x20], edi
call fcn.0044f750
xor eax, eax
jmp 0x44f995
cmp byte [edi + 2], 0x3e
je 0x4506bd
lea eax, [edi + 2]
mov ecx, 0x9b
jmp 0x44f910
cmp byte [edi + 2], 0x3d
lea eax, [edi + 2]
mov ecx, 0x8f
jne 0x44f910
lea eax, [edi + 3]
mov ecx, 0x90
jmp 0x44f910
cmp byte [edi + 2], 0x2e
jne 0x450170
add edi, 3
mov dword [ecx + 8], 0x8e
mov dword [ecx + 0x20], edi
jmp 0x44fc75
movzx edx, byte [edi + 2]
cmp dl, 0x3d
je 0x4506e3
lea eax, [edi + 2]
cmp dl, 0x2f
je 0x450cb4
mov dword [ecx + 8], 0xa7
jmp 0x44fed8
lea eax, [edi + 2]
mov edx, 0x97
jmp 0x44fcb8
cmp dl, 0xa
jne 0x44ff39
mov eax, edi
add eax, 2
jmp 0x44ff3f
cmp al, 0x78
jne 0x450198
movzx eax, byte [edi + 2]
lea edx, [edi + 2]
cmp al, 0x46
ja 0x44fb8b
cmp al, 0x40
ja 0x44fb97
lea ecx, [eax - 0x30]
cmp cl, 9
jbe 0x44fb97
mov eax, dword [esi + 0x24]
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x38], edi
mov dword [ebp - 0x34], edx
mov eax, dword [eax]
mov dword [ebp - 0x5c], edx
mov dword [esp + 4], ecx
mov dword [esp], 0x8d
mov ecx, dword [esi + 0x24]
call dword [eax + 8]
movzx eax, byte [edi + 2]
mov edi, dword [ebp - 0x5c]
sub esp, 8
jmp 0x44fb79
cmp al, 0xed
ja 0x45093d
cmp al, 0xcc
ja 0x44fdb8
add eax, 0x3e
cmp al, 9
jbe 0x44fdb8
jmp 0x45012c
mov dword [ecx + 8], 0xa6
lea eax, [edi + 2]
jmp 0x44fed8
movzx edx, byte [edi + 2]
sub edx, 0x30
cmp edx, 9
jbe 0x44f910
lea eax, [edi + 2]
mov ecx, 0xa2
jmp 0x44f910
cmp al, 0x6f
je 0x4507b3
cmp al, 0x78
je 0x45070a
cmp al, 0x62
jne 0x450108
add edi, 2
xor ecx, ecx
xor edx, edx
mov dword [esi + 0x20], edi
movzx eax, byte [edi]
jmp 0x45036b
movzx eax, byte [edi + 1]
lea ebx, [edi + 1]
xor edx, edx
cmp al, 0x5f
je 0x4508a3
mov edi, ebx
lea ebx, [eax - 0x30]
cmp bl, 1
jbe 0x450358
test ecx, ecx
je 0x45039f
test dl, dl
je 0x45039f
mov eax, dword [esi + 0x24]
mov dword [ebp - 0x38], ecx
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x34], edi
mov edx, dword [eax]
mov dword [esp + 4], ecx
mov ecx, eax
mov dword [esp], 0xf6
call dword [edx + 8]
movzx eax, byte [edi]
sub esp, 8
xor edx, edx
cmp al, 0x6e
mov ecx, dword [esi + 0x24]
sete dl
add edx, edi
mov ebx, edx
cmp dword [esi + 0x20], edi
je 0x450d2e
movzx eax, byte [ebx]
cmp al, 0x2e
je 0x4503ee
jbe 0x450b4e
cmp al, 0x7a
ja 0x450b56
cmp al, 0x5b
ja 0x450da2
cmp al, 0x39
ja 0x450eb2
cmp al, 0x2f
je 0x450b56
movzx eax, byte [ebx + 1]
add ebx, 1
cmp al, 0x2e
jne 0x4503bd
movzx eax, byte [ebx + 1]
sub eax, 0x30
cmp eax, 9
ja 0x450b56
add ebx, 2
jmp 0x4503b6
lea ebx, [edi + ecx]
mov ecx, dword [esi + 0x24]
movd xmm0, edi
sub eax, 0x201c
movd xmm7, ebx
mov edx, dword [ecx]
punpckldq xmm0, xmm7
cmp eax, 1
jbe 0x450602
lea eax, [ebp - 0x38]
mov byte [ebp - 0x30], 0x27
mov dword [ebp - 0x5c], eax
movq qword [ebp - 0x38], xmm0
mov dword [esp + 4], eax
mov dword [esp], 0x90
call dword [edx + 8]
mov dword [ebp - 0x78], 0x2019
mov dword [ebp - 0x74], 0x2018
sub esp, 8
mov dword [ebp - 0x60], 0x27
mov dword [ebp - 0x68], 0x58c7e4
mov ecx, dword [ebp - 0x68]
mov eax, dword [esi + 0x2c]
mov dword [ebp - 0x70], esi
add eax, dword [esi + 0x28]
mov esi, ebx
add ecx, 0xc
mov ebx, eax
mov dword [ebp - 0x6c], ecx
mov eax, dword [ebp - 0x5c]
mov ecx, ebx
mov edx, esi
sub ecx, esi
call fcn.00472e70
cmp byte [ebp - 0x30], 0
mov ecx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x34]
je 0x450508
mov edx, dword [ebp - 0x60]
cmp eax, edx
je 0x4506f2
mov edx, dword [ebp - 0x74]
cmp eax, edx
je 0x450f17
mov edx, dword [ebp - 0x78]
cmp eax, edx
je 0x450ec2
cmp eax, 0xa
je 0x4504bc
cmp eax, 0xd
jne 0x4504fa
mov ebx, esi
mov esi, dword [ebp - 0x70]
movd xmm0, edi
lea edx, [ebp - 0x50]
movd xmm1, ebx
mov ecx, dword [esi + 0x24]
punpckldq xmm0, xmm1
movq qword [ebp - 0x50], xmm0
mov eax, dword [ecx]
mov dword [esp + 4], edx
mov dword [esp], 0x179
call dword [eax + 8]
sub esp, 8
mov dword [esi + 0x20], ebx
mov dword [esi + 8], 0x86
jmp 0x450112
sub eax, 0x2028
cmp eax, 1
jbe 0x4504bc
lea esi, [esi]
cmp byte [esi], 0
jne 0x450511
cmp esi, ebx
je 0x450518
add esi, ecx
jmp 0x450477
mov ebx, esi
mov esi, dword [ebp - 0x70]
movd xmm0, edi
movd xmm7, ebx
mov ecx, dword [esi + 0x24]
punpckldq xmm0, xmm7
movq qword [esp], xmm0
call fcn.00419080
push ecx
push ecx
jmp 0x4504eb
add ecx, 1
mov eax, ebx
jmp 0x44fde9
mov eax, dword [esi + 0x2c]
lea edx, [edi + 1]
add eax, dword [esi + 0x28]
cmp edx, eax
jne 0x450198
movd xmm0, dword [esi + 0x20]
movd xmm7, edx
mov ecx, dword [esi + 0x24]
mov edi, edx
punpckldq xmm0, xmm7
movq qword [esp], xmm0
call fcn.00419080
push eax
push eax
mov dword [ebp - 0x5c], edi
jmp 0x450040
lea eax, [esi + 0x34]
mov dword [ebp - 0x40], 0
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x44], eax
lea eax, [ebp - 0x44]
mov dword [ebp - 0x3c], 0
mov dword [esp + 8], eax
mov dword [esp + 4], edi
mov dword [esp], esi
call fcn.0044df00
mov eax, dword [ebp - 0x40]
mov edi, dword [ebp - 0x38]
sub esp, 0xc
mov ecx, dword [esi + 0x24]
mov dword [esp], eax
call fcn.00485810
movzx eax, byte [edi]
sub esp, 4
jmp 0x44fb79
cmp al, 0x24
je 0x44fdb8
sub eax, 0x41
cmp al, 0x19
jbe 0x44fdb8
jmp 0x45012c
lea ebx, [edi + ecx]
movd xmm0, edi
mov ecx, dword [esi + 0x24]
movd xmm3, ebx
punpckldq xmm0, xmm3
mov byte [ebp - 0x30], 0x22
mov eax, dword [ecx]
lea edx, [ebp - 0x38]
mov dword [ebp - 0x5c], edx
movq qword [ebp - 0x38], xmm0
mov dword [esp + 4], edx
mov dword [esp], 0x90
call dword [eax + 8]
mov dword [ebp - 0x78], 0x201d
mov dword [ebp - 0x74], 0x201c
sub esp, 8
mov dword [ebp - 0x60], 0x22
mov dword [ebp - 0x68], 0x58c7f0
jmp 0x450461
lea ecx, [eax - 0xc6]
mov eax, 1
shl eax, cl
test eax, 0x7ff3fd2d
jne 0x45069b
mov dword [esi + 8], 0x87
mov dword [esi + 0x18], ebx
jmp 0x44f990
mov dword [esp + 0xc], 0
lea ecx, [ebp - 0x38]
mov dword [esp + 8], edi
mov dword [esp + 4], edi
mov dword [esp], esi
call fcn.0044e530
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x34]
mov ebx, dword [ebp - 0x30]
sub esp, 0x10
mov dword [esi + 0x20], eax
mov dword [esi + 0x10], ecx
mov dword [esi + 0x14], ebx
mov dword [esi + 4], eax
mov dword [esi + 8], 0x81
jmp 0x44f990
lea ecx, [eax - 0xe5]
mov eax, 1
shl eax, cl
test eax, 0x1e2f61
je 0x45069b
jmp 0x450659
cmp byte [ecx + 0xc], 0
jne 0x4506cf
mov eax, dword [ecx + 0x28]
cmp dword [ecx + 0x1c], eax
jne 0x4501da
add edi, 3
mov ecx, esi
mov dword [esi + 0x20], edi
call fcn.0044f750
xor eax, eax
jmp 0x44f995
mov dword [ecx + 8], 0xa8
lea eax, [edi + 3]
jmp 0x44fed8
mov eax, dword [ebp - 0x68]
cmp dword [ebp - 0x6c], eax
je 0x450508
mov ebx, esi
mov esi, dword [ebp - 0x70]
add ebx, ecx
jmp 0x4504eb
add edi, 2
xor ecx, ecx
xor edx, edx
mov dword [esi + 0x20], edi
movzx eax, byte [edi]
cmp al, 0x46
ja 0x450950
cmp al, 0x40
ja 0x45079b
sub eax, 0x30
cmp al, 9
jbe 0x45079b
test ecx, ecx
je 0x450736
test dl, dl
jne 0x450dc8
mov edx, dword [esi + 0x20]
mov eax, edi
mov ecx, dword [esi + 0x24]
mov ebx, eax
cmp edi, edx
je 0x450d5d
movzx edx, byte [ebx]
cmp dl, 0x2e
je 0x450786
jbe 0x450b7f
cmp dl, 0x7a
ja 0x450b88
cmp dl, 0x5b
ja 0x450d8c
cmp dl, 0x39
ja 0x450ea1
cmp dl, 0x2f
je 0x450b88
movzx edx, byte [ebx + 1]
add ebx, 1
cmp dl, 0x2e
jne 0x450750
movzx edx, byte [ebx + 1]
sub edx, 0x30
cmp edx, 9
ja 0x450b88
add ebx, 2
jmp 0x450748
movzx eax, byte [edi + 1]
lea ebx, [edi + 1]
xor edx, edx
cmp al, 0x5f
je 0x450f82
mov edi, ebx
jmp 0x450717
add edi, 2
xor ecx, ecx
xor edx, edx
mov dword [esi + 0x20], edi
movzx eax, byte [edi]
sub eax, 0x30
cmp eax, 7
ja 0x4507e4
xor edx, edx
cmp byte [edi + 1], 0x5f
lea ebx, [edi + 1]
je 0x450fd6
mov edi, ebx
movzx eax, byte [edi]
sub eax, 0x30
cmp eax, 7
jbe 0x4507c8
test ecx, ecx
je 0x45080d
test dl, dl
je 0x45080d
mov eax, dword [esi + 0x24]
mov dword [ebp - 0x38], ecx
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x34], edi
mov edx, dword [eax]
mov dword [esp + 4], ecx
mov ecx, eax
mov dword [esp], 0xf6
call dword [edx + 8]
sub esp, 8
mov ecx, dword [esi + 0x24]
cmp dword [esi + 0x20], edi
je 0x450f22
movzx eax, byte [edi]
cmp al, 0x6e
je 0x45086b
mov ebx, edi
cmp al, 0x2e
je 0x450856
jbe 0x4508e8
cmp al, 0x7a
ja 0x4508f0
cmp al, 0x5b
ja 0x450cd9
cmp al, 0x39
ja 0x450e91
cmp al, 0x2f
je 0x4508f0
add ebx, 1
movzx eax, byte [ebx]
cmp al, 0x2e
jne 0x450826
movzx eax, byte [ebx + 1]
sub eax, 0x30
cmp eax, 9
ja 0x4508f0
add ebx, 2
jmp 0x45084f
movzx eax, byte [edi + 1]
add edi, 1
jmp 0x450820
add edi, 2
mov ecx, esi
mov dword [esi + 0x20], edi
call fcn.0044f750
xor eax, eax
jmp 0x44f995
cmp eax, 9
ja 0x450bde
mov dword [esi + 0x20], edi
mov ecx, esi
call fcn.0044f480
mov ebx, dword [esi + 0x20]
jmp 0x450112
add edi, 2
cmp byte [ebx + 1], 0x5f
mov edx, 1
je 0x4508b8
mov ecx, ebx
jmp 0x45034e
movzx eax, byte [edi + 1]
add edi, 1
cmp al, 0x5f
je 0x4508b8
sub eax, 0x30
mov ecx, dword [esi + 0x24]
cmp al, 1
jbe 0x450f60
mov dword [esp], ebx
mov dword [esp + 4], edi
call fcn.00419060
xor edx, edx
push eax
push eax
mov ecx, ebx
jmp 0x45034e
cmp al, 0x24
je 0x45084c
cmp edi, ebx
je 0x450910
mov dword [ebp - 0x38], edi
mov dword [ebp - 0x34], ebx
mov eax, dword [ecx]
lea edx, [ebp - 0x38]
mov dword [esp + 4], edx
mov dword [esp], 0x183
call dword [eax + 8]
sub esp, 8
mov dword [esi + 0x20], ebx
jmp 0x450112
mov dword [esp], eax
call fcn.0044f3b0
sub esp, 4
test al, al
je 0x450e07
mov eax, dword [esi + 0x20]
mov dword [esi + 8], 0x2a
add eax, 1
jmp 0x44fed8
add eax, 0x11
cmp al, 1
jbe 0x44fdb8
jmp 0x45012c
lea ebx, [eax - 0x61]
cmp bl, 5
jbe 0x45079b
test ecx, ecx
je 0x450968
test dl, dl
jne 0x450dc8
cmp al, 0x6e
mov edx, dword [esi + 0x20]
sete al
movzx eax, al
add eax, edi
jmp 0x45073b
lea ecx, [eax - 0xa9]
mov eax, 1
shl eax, cl
test eax, 0x1ffb7c00
je 0x45069b
jmp 0x450659
cmp byte [edi + 3], 0x3d
lea eax, [edi + 3]
mov ecx, 0x95
jne 0x44f910
lea eax, [edi + 4]
mov ecx, 0x96
jmp 0x44f910
mov byte [esi + 0xd], 1
lea edx, [edi + 2]
pxor xmm4, xmm4
movdqu xmm7, xmmword [str._n_n_n_n_n_n_n_n_n_n_n_n_n_n_n_n_r_r_r_r_r_r_r_r_r_r_r_r_r_r_r_r_]
movdqu xmm6, xmmword [0x58ca80]
mov dword [ebp - 0x5c], edi
mov ebx, edx
movdqu xmm3, xmmword [0x58ca90]
movdqu xmm5, xmmword [0x58ca60]
movdqu xmm0, xmmword [ebx]
movdqu xmm1, xmmword [ebx]
movdqu xmm2, xmmword [ebx]
pcmpeqb xmm1, xmm6
pcmpeqb xmm0, xmm7
pcmpeqb xmm2, xmm4
por xmm0, xmm1
movdqu xmm1, xmmword [ebx]
pcmpeqb xmm1, xmm3
por xmm1, xmm2
movdqu xmm2, xmmword [ebx]
por xmm0, xmm1
pcmpeqb xmm2, xmm5
por xmm0, xmm2
pmovmskb edi, xmm0
test edi, edi
je 0x450a90
xor eax, eax
tzcnt eax, edi
cmp eax, 0xf
jg 0x450a90
mov ecx, edx
jmp 0x450a60
cmp dl, 0xa
je 0x450a98
cmp dl, 0xd
je 0x450a98
cmp dl, 0xe2
je 0x450b20
test dl, dl
je 0x450cef
lea esi, cs:[esi]
add eax, 1
cmp eax, 0x10
je 0x450a8e
bt edi, eax
jae 0x450a58
movzx edx, byte [ebx + eax]
cmp dl, 0x2a
jne 0x450a38
cmp byte [ebx + eax + 1], 0x2f
jne 0x450a58
add eax, ebx
mov dword [ebp - 0x5c], eax
add eax, 2
mov ecx, esi
mov dword [esi + 0x20], eax
call fcn.00449fd0
xor eax, eax
jmp 0x44f995
mov edx, ecx
add ebx, 0x10
jmp 0x4509e6
mov edi, dword [ebp - 0x5c]
mov edx, ecx
mov ecx, 1
add ecx, eax
mov byte [esi + 0xc], 1
pxor xmm2, xmm2
mov dword [ebp - 0x60], edx
add ebx, ecx
mov dword [ebp - 0x68], edi
mov edi, ebx
movdqu xmm1, xmmword [edi]
movdqu xmm0, xmmword [edi]
pcmpeqb xmm1, xmm2
pcmpeqb xmm0, xmm3
por xmm0, xmm1
pmovmskb ecx, xmm0
test ecx, ecx
je 0x450dc0
xor eax, eax
tzcnt eax, ecx
cmp eax, 0xf
jg 0x450dc0
lea edx, [edi + eax]
jmp 0x450b01
test bl, bl
je 0x451024
add eax, 1
add edx, 1
cmp eax, 0x10
je 0x450dc0
bt ecx, eax
jae 0x450af2
movzx ebx, byte [edx]
mov dword [ebp - 0x5c], edx
cmp bl, 0x2a
jne 0x450aea
cmp byte [edx + 1], 0x2f
jne 0x450af2
mov eax, edx
jmp 0x450a7a
cmp byte [ebx + eax + 1], 0x80
jne 0x450a58
movzx edx, byte [ebx + eax + 2]
sub edx, 0xa8
cmp edx, 1
ja 0x450a58
mov edx, ecx
mov edi, dword [ebp - 0x5c]
mov ecx, 3
jmp 0x450aa2
cmp al, 0x24
je 0x4503e3
cmp edx, ebx
je 0x450910
mov eax, dword [ecx]
mov dword [ebp - 0x38], edx
lea edx, [ebp - 0x38]
mov dword [ebp - 0x34], ebx
mov dword [esp + 4], edx
mov dword [esp], 0x182
call dword [eax + 8]
sub esp, 8
jmp 0x450910
cmp dl, 0x24
je 0x45077a
cmp eax, ebx
je 0x450910
mov dword [ebp - 0x38], eax
mov eax, dword [ecx]
lea edx, [ebp - 0x38]
mov dword [ebp - 0x34], ebx
mov dword [esp + 4], edx
mov dword [esp], 0x184
call dword [eax + 8]
sub esp, 8
jmp 0x450910
movzx eax, byte [edi + 3]
add edi, 3
jmp 0x44fb79
xor eax, eax
jmp 0x44fb2f
xor ecx, ecx
jmp 0x44fb07
sub ecx, 0x61
cmp cl, 5
ja 0x4502ab
mov edi, edx
jmp case.0x44fb84.1
mov dword [ebp - 0x5c], edi
cmp dl, 0x2e
je 0x450e48
mov eax, edx
and eax, 0xffffffdf
cmp al, 0x45
jne 0x450c4e
mov edx, dword [ebp - 0x5c]
mov ecx, dword [esi + 0x24]
movzx eax, byte [edx + 1]
mov dword [ebp - 0x38], edi
sub eax, 0x2b
test al, 0xfd
sete al
movzx eax, al
lea ebx, [eax + edx + 1]
mov eax, dword [ecx]
lea edx, [ebp - 0x38]
mov dword [ebp - 0x5c], ebx
mov dword [ebp - 0x34], ebx
mov dword [esp + 4], edx
mov dword [esp], 0xf7
call dword [eax + 8]
movzx eax, byte [ebx]
mov ecx, ebx
sub esp, 8
mov edx, eax
sub eax, 0x30
cmp eax, 7
ja 0x450c4e
movzx eax, byte [ecx + 1]
add ecx, 1
mov edx, eax
sub eax, 0x30
cmp eax, 7
jbe 0x450c3a
mov dword [ebp - 0x5c], ecx
cmp dl, 0x6e
je 0x450ede
mov ebx, dword [ebp - 0x5c]
cmp dl, 0x2e
je 0x450c88
jbe 0x450c99
cmp dl, 0x7a
ja 0x450c9e
cmp dl, 0x5b
ja 0x450df1
cmp dl, 0x39
ja 0x450ecd
cmp dl, 0x2f
je 0x450c9e
add ebx, 1
movzx edx, byte [ebx]
cmp dl, 0x2e
jne 0x450c5f
movzx eax, byte [ebx + 1]
sub eax, 0x30
cmp eax, 9
ja 0x450c9e
add ebx, 2
jmp 0x450c80
cmp dl, 0x24
je 0x450c7d
mov eax, dword [ebp - 0x5c]
cmp eax, ebx
je 0x450910
mov dword [ebp - 0x38], eax
mov ecx, dword [esi + 0x24]
jmp 0x4508f7
mov dword [esp], eax
call fcn.0044f3b0
sub esp, 4
test al, al
je 0x45092b
mov eax, dword [esi + 0x20]
mov dword [esi + 8], 0xa7
add eax, 2
jmp 0x44fed8
sub eax, 0x5c
mov edx, 0x7fffffe9
bt edx, eax
jb 0x45084c
jmp 0x4508f0
mov edi, dword [ebp - 0x5c]
mov edx, ecx
mov ecx, dword [esi + 0x24]
movd xmm7, edx
movd xmm0, edi
lea edx, [ebp - 0x38]
punpckldq xmm0, xmm7
mov eax, dword [ecx]
movq qword [ebp - 0x38], xmm0
mov dword [esp + 4], edx
mov dword [esp], 0x172
call dword [eax + 8]
mov eax, dword [esi + 0x2c]
add eax, dword [esi + 0x28]
mov dword [esi + 0x20], eax
sub esp, 8
xor eax, eax
jmp 0x44f995
movd xmm0, dword [esi]
mov eax, dword [ecx]
movd xmm3, edx
lea edx, [ebp - 0x38]
punpckldq xmm0, xmm3
movq qword [ebp - 0x38], xmm0
mov dword [esp + 4], edx
mov dword [esp], 0x192
call dword [eax + 8]
mov dword [esi + 0x20], ebx
sub esp, 8
jmp 0x450112
movd xmm0, dword [esi]
movd xmm3, eax
mov eax, dword [ecx]
lea edx, [ebp - 0x38]
punpckldq xmm0, xmm3
movq qword [ebp - 0x38], xmm0
mov dword [esp + 4], edx
mov dword [esp], 0x193
call dword [eax + 8]
mov dword [esi + 0x20], ebx
sub esp, 8
jmp 0x450112
sub edx, 0x5c
mov edi, 0x7fffffe9
bt edi, edx
jb 0x45077a
jmp 0x450b88
sub eax, 0x5c
mov edi, 0x7fffffe9
bt edi, eax
jb 0x4503e3
jmp 0x450b56
mov dword [ebp - 0x5c], edx
jmp 0x450040
add edi, 0x10
jmp 0x450ab6
mov eax, dword [esi + 0x24]
mov dword [ebp - 0x38], ecx
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x34], edi
mov edx, dword [eax]
mov dword [esp + 4], ecx
mov ecx, eax
mov dword [esp], 0xf6
call dword [edx + 8]
movzx eax, byte [edi]
sub esp, 8
jmp 0x450968
sub edx, 0x5c
mov eax, 0x7fffffe9
bt eax, edx
jb 0x450c7d
jmp 0x450c9e
mov eax, dword [esi + 0x20]
mov ecx, dword [esi + 0x24]
movd xmm0, edi
lea edx, [ebp - 0x38]
add eax, 2
movd xmm3, eax
mov eax, dword [ecx]
punpckldq xmm0, xmm3
movq qword [ebp - 0x38], xmm0
mov dword [esp + 4], edx
mov dword [esp], 0x190
call dword [eax + 8]
mov ecx, esi
push edx
push edx
add dword [esi + 0x20], 2
call fcn.00449fd0
xor eax, eax
jmp 0x44f995
movzx eax, byte [edi + 1]
sub eax, 0x30
cmp eax, 9
ja 0x450c57
mov ecx, dword [esi + 0x24]
lea ebx, [edi + 1]
lea edx, [ebp - 0x38]
mov dword [ebp - 0x38], edi
mov dword [ebp - 0x34], ebx
mov eax, dword [ecx]
mov dword [esp + 4], edx
mov dword [esp], 0xf8
call dword [eax + 8]
mov ecx, ebx
push eax
push eax
movzx eax, byte [ecx]
mov edx, eax
sub eax, 0x30
cmp eax, 7
ja 0x450f50
add ecx, 1
jmp 0x450e7b
sub eax, 0x41
cmp al, 0x19
jbe 0x45084c
jmp 0x4508f0
sub edx, 0x41
cmp dl, 0x19
jbe 0x45077a
jmp 0x450b88
sub eax, 0x41
cmp al, 0x19
jbe 0x4503e3
jmp 0x450b56
mov eax, dword [ebp - 0x68]
add eax, 8
jmp 0x4506f5
sub edx, 0x41
cmp dl, 0x19
jbe 0x450c7d
jmp 0x450c9e
mov ecx, dword [esi + 0x24]
add dword [ebp - 0x5c], 1
lea edx, [ebp - 0x38]
mov ebx, dword [ebp - 0x5c]
mov dword [ebp - 0x38], edi
mov eax, dword [ecx]
mov dword [ebp - 0x34], ebx
mov dword [esp + 4], edx
mov dword [esp], 0x9a
call dword [eax + 8]
mov ecx, ebx
push eax
push eax
movzx eax, byte [ecx]
mov edx, eax
sub eax, 0x30
cmp eax, 7
ja 0x450f58
add ecx, 1
jmp 0x450f05
mov eax, dword [ebp - 0x68]
add eax, 4
jmp 0x4506f5
movd xmm0, dword [esi]
mov eax, dword [ecx]
movd xmm7, edi
lea edx, [ebp - 0x38]
punpckldq xmm0, xmm7
movq qword [ebp - 0x38], xmm0
mov dword [esp + 4], edx
mov dword [esp], 0x194
call dword [eax + 8]
push eax
push eax
mov ebx, dword [esi + 0x20]
jmp 0x450112
mov dword [ebp - 0x5c], ecx
jmp 0x450bea
mov dword [ebp - 0x5c], ecx
jmp 0x450c57
mov eax, dword [ecx]
lea edx, [ebp - 0x38]
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x34], edi
mov dword [esp + 4], edx
mov dword [esp], 0xf5
call dword [eax + 8]
xor edx, edx
push eax
push eax
jmp 0x4508e1
add edi, 2
cmp byte [ebx + 1], 0x5f
je 0x450f9a
mov edx, 1
mov ecx, ebx
jmp 0x450714
add edi, 1
movzx eax, byte [edi]
cmp al, 0x5f
je 0x450f97
mov ecx, dword [esi + 0x24]
cmp al, 0x46
ja 0x451041
cmp al, 0x40
ja 0x45104c
sub eax, 0x30
cmp al, 9
jbe 0x45104c
mov dword [esp], ebx
mov dword [esp + 4], edi
call fcn.00419060
xor edx, edx
push eax
push eax
mov ecx, ebx
jmp 0x450714
add edi, 2
cmp byte [ebx + 1], 0x5f
je 0x450fee
mov edx, 1
mov ecx, ebx
jmp 0x4507bd
add edi, 1
movzx eax, byte [edi]
cmp al, 0x5f
je 0x450feb
sub eax, 0x30
mov ecx, dword [esi + 0x24]
cmp eax, 7
ja 0x45102f
mov eax, dword [ecx]
lea edx, [ebp - 0x38]
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x34], edi
mov dword [esp + 4], edx
mov dword [esp], 0xf5
call dword [eax + 8]
xor edx, edx
push ecx
push ecx
mov ecx, ebx
jmp 0x4507bd
mov edi, dword [ebp - 0x68]
mov edx, dword [ebp - 0x60]
jmp 0x450cf4
mov dword [esp], ebx
mov dword [esp + 4], edi
call fcn.00419060
push edx
push edx
xor edx, edx
jmp 0x45101d
sub eax, 0x61
cmp al, 5
ja 0x450fbf
mov eax, dword [ecx]
lea edx, [ebp - 0x38]
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x34], edi
mov dword [esp + 4], edx
mov dword [esp], 0xf5
call dword [eax + 8]
xor edx, edx
push eax
push eax
jmp 0x450fcf