Function at 0x6451a0
Capabilities:
Parse credit card information

Disassembly:
mov rcx, qword gs:[0x28]
mov rcx, qword [rcx]
lea rax, [rsp - 0x88]
cmp rax, qword [rcx + 0x10]
jbe 0x646467
sub rsp, 0x108
mov qword [rsp + 0x100], rbp
lea rbp, [rsp + 0x100]
movzx eax, word [rsp + 0x120]
test ax, 2
jne 0x646396
lea rax, [0x00718040]
mov qword [rsp], rax
call fcn.0040caf0
mov rax, qword [rsp + 8]
movzx ecx, word [rsp + 0x120]
mov word [rax], cx
mov rcx, qword [rsp + 0x118]
mov qword [rax + 0x38], rcx
cmp dword [0x00a5f510], 0
jne 0x646372
mov rdx, qword [rsp + 0x110]
mov qword [rax + 0x30], rdx
mov qword [rsp + 0xe0], rax
mov rbx, rcx
mov rsi, rdx
xor edi, edi
xor r8d, r8d
xor r9d, r9d
jmp 0x645274
mov r10, qword [rsp + 0xe0]
mov edi, eax
mov r8, rbx
mov r9, rsi
mov rax, r10
mov rbx, qword [rsp + 0x118]
mov rsi, qword [rsp + 0x110]
mov r11, rcx
mov rcx, rdx
mov rdx, r11
test rcx, rcx
je 0x646225
mov qword [rsp + 0xa0], rcx
mov qword [rsp + 0xf0], rdx
mov byte [rsp + 0x77], dil
movzx r10d, byte [rdx]
cmp r10b, 0x2e
ja 0x645679
cmp r10b, 0x28
ja 0x64549c
cmp r10b, 0x24
jne 0x64531d
movzx r8d, word [rax]
test r8w, 0x10
je 0x64530d
mov qword [rsp], rax
mov byte [rsp + 8], 0xa
call fcn.006421b0
mov rax, qword [rsp + 0x10]
movzx ecx, word [rax + 2]
bts ecx, 8
mov word [rax + 2], cx
mov rcx, qword [rsp + 0xa0]
dec rcx
mov rdx, rcx
neg rcx
sar rcx, 0x3f
and rcx, 1
mov rbx, qword [rsp + 0xf0]
add rcx, rbx
movzx eax, byte [rsp + 0x77]
xor ebx, ebx
xor esi, esi
jmp 0x645248
mov qword [rsp], rax
mov byte [rsp + 8], 8
call fcn.006421b0
jmp 0x6452db
cmp r10b, 0x28
jne 0x645408
movzx r8d, word [rax]
test r8w, 0x40
je 0x64533f
cmp rcx, 2
jl 0x64533f
cmp byte [rdx + 1], 0x3f
je 0x64539f
inc qword [rax + 0x28]
mov qword [rsp], rax
mov byte [rsp + 8], pe_nt_image_headers64
call fcn.006421b0
mov rax, qword [rsp + 0x10]
mov rcx, qword [rsp + 0xe0]
mov rdx, qword [rcx + 0x28]
mov qword [rax + 0x58], rdx
mov rax, qword [rsp + 0xa0]
lea rdx, [rax - 1]
mov rax, rdx
neg rdx
sar rdx, 0x3f
and rdx, 1
mov rbx, qword [rsp + 0xf0]
add rdx, rbx
mov rcx, rdx
mov rdx, rax
movzx eax, byte [rsp + 0x77]
xor ebx, ebx
xor esi, esi
jmp 0x645248
mov qword [rsp], rax
mov qword [rsp + 8], rdx
mov qword [rsp + 0x10], rcx
call fcn.006466f0
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x20]
mov rbx, qword [rsp + 0x18]
test rcx, rcx
jne 0x6453dc
mov rcx, rbx
movzx eax, byte [rsp + 0x77]
xor ebx, ebx
xor esi, esi
jmp 0x645248
mov qword [rsp + 0x128], 0
mov qword [rsp + 0x130], rcx
mov qword [rsp + 0x138], rax
mov rbp, qword [rsp + 0x100]
add rsp, 0x108
ret
mov qword [rsp], rdx
mov qword [rsp + 8], rcx
call fcn.0064b060
mov eax, dword [rsp + 0x10]
mov rcx, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x20]
mov rsi, qword [rsp + 0x18]
test rcx, rcx
jne 0x645470
mov qword [rsp + 0x78], rbx
mov qword [rsp + 0xb0], rsi
mov rcx, qword [rsp + 0xe0]
mov qword [rsp], rcx
mov dword [rsp + 8], eax
call fcn.00642140
mov rcx, qword [rsp + 0xb0]
mov rdx, qword [rsp + 0x78]
movzx eax, byte [rsp + 0x77]
xor ebx, ebx
xor esi, esi
jmp 0x645248
mov qword [rsp + 0x128], 0
mov qword [rsp + 0x130], rcx
mov qword [rsp + 0x138], rdx
mov rbp, qword [rsp + 0x100]
add rsp, 0x108
ret
cmp r10b, 0x29
je 0x6455fe
lea r11d, [r10 - 0x2a]
cmp r11b, 1
jbe 0x64551b
cmp r10b, 0x2e
jne 0x645408
movzx r8d, word [rax]
test r8w, 8
je 0x64550b
mov qword [rsp], rax
mov byte [rsp + 8], 6
call fcn.006421b0
mov r8, qword [rsp + 0xa0]
lea rdx, [r8 - 1]
mov r8, rdx
neg rdx
sar rdx, 0x3f
and rdx, 1
mov r9, qword [rsp + 0xf0]
lea rcx, [r9 + rdx]
mov rdx, r8
movzx eax, byte [rsp + 0x77]
xor ebx, ebx
xor esi, esi
jmp 0x645248
mov qword [rsp], rax
mov byte [rsp + 8], 5
call fcn.006421b0
jmp 0x6454d4
cmp r10b, 0x2a
jne 0x6455da
mov edi, 0xe
mov byte [rsp + 0x77], dil
mov qword [rsp], rax
mov byte [rsp + 8], dil
xorps xmm0, xmm0
movups xmmword [rsp + 0x10], xmm0
mov qword [rsp + 0x20], rdx
mov qword [rsp + 0x28], rcx
lea rbx, [rcx - 1]
mov rsi, rbx
neg rbx
sar rbx, 0x3f
and rbx, 1
add rbx, rdx
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x40], r9
mov qword [rsp + 0x48], r8
call fcn.006422a0
mov rax, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x50]
test rcx, rcx
jne 0x6455ae
mov rcx, rbx
movzx eax, byte [rsp + 0x77]
mov rbx, qword [rsp + 0xa0]
mov rsi, qword [rsp + 0xf0]
jmp 0x645248
mov qword [rsp + 0x128], 0
mov qword [rsp + 0x130], rcx
mov qword [rsp + 0x138], rax
mov rbp, qword [rsp + 0x100]
add rsp, 0x108
ret
cmp r10b, 0x2b
jne 0x6455ea
mov edi, 0xf
jmp 0x64552a
cmp r10b, 0x3f
jne 0x64552a
mov edi, 0x10
jmp 0x64552a
mov qword [rsp], rax
call fcn.00647740
mov rax, qword [rsp + 0x10]
mov rcx, qword [rsp + 8]
test rcx, rcx
jne 0x64564d
mov r8, qword [rsp + 0xa0]
lea rdx, [r8 - 1]
mov r8, rdx
neg rdx
sar rdx, 0x3f
and rdx, 1
mov r9, qword [rsp + 0xf0]
lea rcx, [r9 + rdx]
mov rdx, r8
movzx eax, byte [rsp + 0x77]
xor ebx, ebx
xor esi, esi
jmp 0x645248
mov qword [rsp + 0x128], 0
mov qword [rsp + 0x130], rcx
mov qword [rsp + 0x138], rax
mov rbp, qword [rsp + 0x100]
add rsp, 0x108
ret
cmp r10b, 0x5c
ja 0x645ec7
cmp r10b, 0x3f
je 0x64551b
cmp r10b, 0x5b
je 0x645e5e
cmp r10b, 0x5c
jne 0x645408
movzx r8d, word [rax]
test r8w, 0x40
je 0x6456e0
cmp rcx, 2
jl 0x6456e0
movzx r8d, byte [rdx + 1]
cmp r8b, 0x43
ja 0x645c38
cmp r8b, 0x41
je 0x645bf4
cmp r8b, 0x42
je 0x645bb0
cmp r8b, 0x43
je 0x645b03
nop
mov r8, qword [rax + 0x20]
lea r9, [rax + 0x20]
mov qword [rsp + 0xf8], r9
test r8, r8
je 0x645ab3
mov r10, qword [r8 + 0x20]
cmp dword [0x00a5f510], 0
jne 0x645a48
mov qword [rax + 0x20], r10
mov r10d, edi
mov rdi, r8
xorps xmm0, xmm0
lea rdi, [rdi - 0x10]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.0045b61d
mov rbp, qword [rbp]
mov qword [rsp + 0xd0], r8
mov byte [r8], 4
movzx edi, word [rax]
mov word [r8 + 2], di
cmp rcx, 2
jl 0x645765
movzx edi, byte [rdx + 1]
cmp dil, 0x70
jne 0x645a3b
mov edi, 1
test dil, dil
jne 0x645919
mov qword [rsp], rax
mov qword [rsp + 8], rdx
mov qword [rsp + 0x10], rcx
lea rbx, [r8 + 0x40]
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], 0
mov qword [rsp + 0x28], 2
call fcn.006482c0
mov rax, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x40]
mov rbx, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x30]
test rsi, rsi
je 0x645820
mov qword [rsp + 0x90], rax
mov qword [rsp + 0xc0], rcx
mov r8, qword [rsp + 0xd0]
mov qword [r8 + 0x30], rbx
mov qword [r8 + 0x38], rdx
cmp dword [0x00a5f510], 0
jne 0x645812
mov qword [r8 + 0x28], rsi
mov rax, qword [rsp + 0xe0]
mov qword [rsp], rax
mov qword [rsp + 8], r8
call fcn.006418d0
mov rcx, qword [rsp + 0xc0]
mov rdx, qword [rsp + 0x90]
movzx eax, byte [rsp + 0x77]
xor ebx, ebx
xor esi, esi
jmp 0x645248
lea rdi, [r8 + 0x28]
mov rax, rsi
call fcn.0045aaa0
jmp 0x6457de
nop
mov rcx, qword [rsp + 0xe0]
mov rax, qword [rcx + 0x20]
cmp dword [0x00a5f510], 0
jne 0x6458f3
mov rdx, qword [rsp + 0xd0]
mov qword [rdx + 0x20], rax
mov qword [rcx + 0x20], rdx
mov qword [rsp], rcx
mov rax, qword [rsp + 0xf0]
mov qword [rsp + 8], rax
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x10], rax
call fcn.006479c0
mov eax, dword [rsp + 0x18]
mov rcx, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x28]
mov rsi, qword [rsp + 0x20]
test rdx, rdx
jne 0x6458c7
mov qword [rsp + 0x78], rbx
mov qword [rsp + 0xb0], rsi
mov rcx, qword [rsp + 0xe0]
mov qword [rsp], rcx
mov dword [rsp + 8], eax
call fcn.00642140
mov rcx, qword [rsp + 0xb0]
mov rdx, qword [rsp + 0x78]
movzx eax, byte [rsp + 0x77]
xor ebx, ebx
xor esi, esi
jmp 0x645248
mov qword [rsp + 0x128], 0
mov qword [rsp + 0x130], rdx
mov qword [rsp + 0x138], rcx
mov rbp, qword [rsp + 0x100]
add rsp, 0x108
ret
mov rdx, qword [rsp + 0xd0]
lea rdi, [rdx + 0x20]
call fcn.0045aaa0
mov rdi, qword [rsp + 0xf8]
mov rax, rdx
call fcn.0045aaa0
jmp 0x64584a
mov qword [rsp], rax
mov qword [rsp + 8], rdx
mov qword [rsp + 0x10], rcx
lea rbx, [r8 + 0x40]
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], 0
mov qword [rsp + 0x28], 2
call fcn.006489b0
mov rax, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x58]
mov rdi, qword [rsp + 0x50]
mov r8, qword [rsp + 0x48]
test rsi, rsi
jne 0x645a0f
test rdx, rdx
je 0x6459ea
mov qword [rsp + 0x80], rdi
mov qword [rsp + 0xb8], r8
mov rbx, qword [rsp + 0xd0]
mov qword [rbx + 0x30], rcx
mov qword [rbx + 0x38], rax
cmp dword [0x00a5f510], 0
jne 0x6459d9
mov qword [rbx + 0x28], rdx
mov rax, qword [rsp + 0xe0]
mov qword [rsp], rax
mov qword [rsp + 8], rbx
call fcn.006418d0
mov rcx, qword [rsp + 0xb8]
mov rdx, qword [rsp + 0x80]
movzx eax, byte [rsp + 0x77]
xor ebx, ebx
xor esi, esi
jmp 0x645248
lea rcx, [rbx + 0x28]
mov rdi, rcx
mov rax, rdx
call fcn.0045aaa0
jmp 0x6459a5
mov rax, qword [rsp + 0xe0]
mov rcx, qword [rsp + 0xa0]
mov rdx, qword [rsp + 0xf0]
mov r8, qword [rsp + 0xd0]
jmp 0x645765
mov qword [rsp + 0x128], 0
mov qword [rsp + 0x130], rsi
mov qword [rsp + 0x138], rbx
mov rbp, qword [rsp + 0x100]
add rsp, 0x108
ret
cmp dil, 0x50
sete dil
jmp 0x64575c
mov qword [rsp + 0xd8], r8
mov rdi, r9
mov rax, r10
call fcn.0045aaa0
lea rcx, [0x007257e0]
mov qword [rsp], rcx
mov qword [rsp + 8], r8
call fcn.00414070
mov rax, qword [rsp + 0xe0]
mov rcx, qword [rsp + 0xa0]
mov rdx, qword [rsp + 0xf0]
mov rbx, qword [rsp + 0x118]
mov rsi, qword [rsp + 0x110]
mov r8, qword [rsp + 0xd8]
mov r9, qword [rsp + 0xf8]
movzx r10d, byte [rsp + 0x77]
jmp 0x64572f
lea rax, [0x007257e0]
mov qword [rsp], rax
call fcn.0040caf0
mov r8, qword [rsp + 8]
mov rax, qword [rsp + 0xe0]
mov rcx, qword [rsp + 0xa0]
mov rdx, qword [rsp + 0xf0]
mov rbx, qword [rsp + 0x118]
mov rsi, qword [rsp + 0x110]
mov r9, qword [rsp + 0xf8]
movzx r10d, byte [rsp + 0x77]
jmp 0x64572f
lea rax, [0x006f7480]
mov qword [rsp], rax
call fcn.0040caf0
mov rdi, qword [rsp + 8]
mov qword [rdi + 8], 0x17
cmp dword [0x00a5f510], 0
jne 0x645ba2
lea rcx, [0x007471d9]
mov qword [rdi], rcx
mov qword [rdi + 0x18], 2
cmp dword [0x00a5f510], 0
jne 0x645b83
mov rax, qword [rsp + 0xf0]
mov qword [rdi + 0x10], rax
mov qword [rsp + 0x128], 0
lea rax, [0x007a7280]
mov qword [rsp + 0x130], rax
mov qword [rsp + 0x138], rdi
mov rbp, qword [rsp + 0x100]
add rsp, 0x108
ret
lea rcx, [rdi + 0x10]
mov rax, rdi
mov rdi, rcx
mov rdx, rax
mov rax, qword [rsp + 0xf0]
call fcn.0045aaa0
mov rdi, rdx
jmp 0x645b50
lea rax, [0x007471d9]
call fcn.0045aaa0
jmp 0x645b33
mov qword [rsp], rax
mov byte [rsp + 8], 0xc
call fcn.006421b0
mov rax, qword [rsp + 0xa0]
lea rdx, [rax - 2]
mov rax, rdx
neg rdx
sar rdx, 0x3f
and rdx, 2
mov rcx, qword [rsp + 0xf0]
add rcx, rdx
mov rdx, rax
movzx eax, byte [rsp + 0x77]
xor ebx, ebx
xor esi, esi
jmp 0x645248
mov qword [rsp], rax
mov byte [rsp + 8], 9
call fcn.006421b0
mov rax, qword [rsp + 0xa0]
lea rdx, [rax - 2]
mov rax, rdx
neg rdx
sar rdx, 0x3f
and rdx, 2
mov rcx, qword [rsp + 0xf0]
add rcx, rdx
mov rdx, rax
movzx eax, byte [rsp + 0x77]
xor ebx, ebx
xor esi, esi
jmp 0x645248
cmp r8b, 0x51
je 0x645cda
cmp r8b, 0x62
je 0x645c96
cmp r8b, 0x7a
jne 0x6456e0
mov qword [rsp], rax
mov byte [rsp + 8], 0xa
call fcn.006421b0
mov rax, qword [rsp + 0xa0]
lea rdx, [rax - 2]
mov rax, rdx
neg rdx
sar rdx, 0x3f
and rdx, 2
mov rcx, qword [rsp + 0xf0]
add rcx, rdx
mov rdx, rax
movzx eax, byte [rsp + 0x77]
xor ebx, ebx
xor esi, esi
jmp 0x645248
mov qword [rsp], rax
mov byte [rsp + 8], 0xb
call fcn.006421b0
mov rax, qword [rsp + 0xa0]
lea rdx, [rax - 2]
mov rax, rdx
neg rdx
sar rdx, 0x3f
and rdx, 2
mov rcx, qword [rsp + 0xf0]
add rcx, rdx
mov rdx, rax
movzx eax, byte [rsp + 0x77]
xor ebx, ebx
xor esi, esi
jmp 0x645248
mov qword [rsp], rdx
mov qword [rsp + 8], rcx
lea rax, [0x0073aef9]
mov qword [rsp + 0x10], rax
mov qword [rsp + 0x18], 2
call fcn.004e2f20
mov rcx, qword [rsp + 0x20]
test rcx, rcx
jge 0x645df5
mov rcx, qword [rsp + 0xa0]
add rcx, 0xfffffffffffffffe
mov rdx, rcx
neg rcx
sar rcx, 0x3f
and rcx, 2
mov rbx, qword [rsp + 0xf0]
add rcx, rbx
xor eax, eax
xor ebx, ebx
mov qword [rsp + 0x78], rax
mov qword [rsp + 0xb0], rbx
jmp 0x645d85
mov qword [rsp + 0x88], rcx
mov qword [rsp + 0xc8], rdx
mov rax, qword [rsp + 0xe0]
mov qword [rsp], rax
mov dword [rsp + 8], esi
call fcn.00642140
mov rax, qword [rsp + 0x78]
mov rbx, qword [rsp + 0xb0]
mov rdx, qword [rsp + 0x88]
mov rcx, qword [rsp + 0xc8]
test rdx, rdx
je 0x645de1
mov qword [rsp], rcx
mov qword [rsp + 8], rdx
call fcn.0064b060
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x20]
mov rdx, qword [rsp + 0x18]
mov rbx, qword [rsp + 0x28]
mov esi, dword [rsp + 0x10]
test rbx, rbx
je 0x645d43
mov qword [rsp + 0x128], 0
mov qword [rsp + 0x130], rbx
mov qword [rsp + 0x138], rax
mov rbp, qword [rsp + 0x100]
add rsp, 0x108
ret
mov rcx, rbx
mov rdx, rax
movzx eax, byte [rsp + 0x77]
xor ebx, ebx
xor esi, esi
jmp 0x645248
mov rdx, qword [rsp + 0xa0]
cmp rcx, rdx
ja 0x646459
cmp rcx, 2
jb 0x64644f
lea rbx, [rcx - 2]
mov rsi, rbx
neg rbx
sar rbx, 0x3f
and rbx, 2
mov r8, qword [rsp + 0xf0]
add rbx, r8
lea rax, [rcx + 2]
cmp rax, rdx
ja 0x646447
sub rdx, rax
mov r9, rdx
neg rdx
sar rdx, 0x3f
and rdx, rax
add r8, rdx
mov rax, r9
mov rdx, rsi
mov rcx, rbx
mov rbx, r8
jmp 0x645d34
mov qword [rsp], rax
mov qword [rsp + 8], rdx
mov qword [rsp + 0x10], rcx
call fcn.00649310
mov rax, qword [rsp + 0x20]
mov rcx, qword [rsp + 0x18]
mov rdx, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x28]
test rbx, rbx
jne 0x645e9b
mov rdx, rax
movzx eax, byte [rsp + 0x77]
xor ebx, ebx
xor esi, esi
jmp 0x645248
mov qword [rsp + 0x128], 0
mov qword [rsp + 0x130], rbx
mov qword [rsp + 0x138], rdx
mov rbp, qword [rsp + 0x100]
add rsp, 0x108
ret
cmp r10b, 0x5e
jne 0x645f2e
movzx r8d, word [rax]
test r8w, 0x10
je 0x645f1e
mov qword [rsp], rax
mov byte [rsp + 8], 9
call fcn.006421b0
mov r8, qword [rsp + 0xa0]
lea rdx, [r8 - 1]
mov r8, rdx
neg rdx
sar rdx, 0x3f
and rdx, 1
mov r9, qword [rsp + 0xf0]
lea rcx, [r9 + rdx]
mov rdx, r8
movzx eax, byte [rsp + 0x77]
xor ebx, ebx
xor esi, esi
jmp 0x645248
mov qword [rsp], rax
mov byte [rsp + 8], 7
call fcn.006421b0
jmp 0x645ee7
cmp r10b, 0x7b
je 0x645fbd
cmp r10b, 0x7c
jne 0x645408
mov qword [rsp], rax
call fcn.006470d0
mov rax, qword [rsp + 0x10]
mov rcx, qword [rsp + 8]
test rcx, rcx
jne 0x645f91
mov r8, qword [rsp + 0xa0]
lea rdx, [r8 - 1]
mov r8, rdx
neg rdx
sar rdx, 0x3f
and rdx, 1
mov r9, qword [rsp + 0xf0]
lea rcx, [r9 + rdx]
mov rdx, r8
movzx eax, byte [rsp + 0x77]
xor ebx, ebx
xor esi, esi
jmp 0x645248
mov qword [rsp + 0x128], 0
mov qword [rsp + 0x130], rcx
mov qword [rsp + 0x138], rax
mov rbp, qword [rsp + 0x100]
add rsp, 0x108
ret
mov qword [rsp + 0x98], r8
mov qword [rsp + 0xe8], r9
mov qword [rsp], rax
mov qword [rsp + 8], rdx
mov qword [rsp + 0x10], rcx
call fcn.00646480
mov rax, qword [rsp + 0x18]
mov rcx, qword [rsp + 0x20]
mov rdx, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x28]
cmp byte [rsp + 0x38], 0
jne 0x64604a
mov rax, qword [rsp + 0xe0]
mov qword [rsp], rax
mov dword [rsp + 8], 0x7b
call fcn.00642140
mov rax, qword [rsp + 0xa0]
lea rdx, [rax - 1]
mov rax, rdx
neg rdx
sar rdx, 0x3f
and rdx, 1
mov rcx, qword [rsp + 0xf0]
add rcx, rdx
mov rdx, rax
mov eax, 0x11
xor ebx, ebx
xor esi, esi
jmp 0x645248
test rax, rax
jl 0x64614b
cmp rax, 0x3e8
jg 0x64614b
cmp rcx, 0x3e8
jg 0x64614b
test rcx, rcx
jl 0x64621e
cmp rax, rcx
setg sil
test sil, sil
jne 0x64614b
mov rsi, qword [rsp + 0xe0]
mov qword [rsp], rsi
mov byte [rsp + 8], 0x11
mov qword [rsp + 0x10], rax
mov qword [rsp + 0x18], rcx
mov rax, qword [rsp + 0xf0]
mov qword [rsp + 0x20], rax
mov rcx, qword [rsp + 0xa0]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x38], rdx
mov rdx, qword [rsp + 0xe8]
mov qword [rsp + 0x40], rdx
mov rdx, qword [rsp + 0x98]
mov qword [rsp + 0x48], rdx
call fcn.006422a0
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x68]
test rax, rax
jne 0x64611f
mov eax, 0x11
mov rbx, qword [rsp + 0xa0]
mov rsi, qword [rsp + 0xf0]
mov rdi, rcx
mov rcx, rdx
mov rdx, rdi
jmp 0x645248
mov qword [rsp + 0x128], 0
mov qword [rsp + 0x130], rax
mov qword [rsp + 0x138], rbx
mov rbp, qword [rsp + 0x100]
add rsp, 0x108
ret
mov rcx, qword [rsp + 0xa0]
mov rax, rcx
sub rcx, rdx
cmp rcx, rax
ja 0x64645e
mov qword [rsp + 0xa8], rcx
lea rax, [0x006f7480]
mov qword [rsp], rax
call fcn.0040caf0
mov rdi, qword [rsp + 8]
mov qword [rdi + 8], 0x14
cmp dword [0x00a5f510], 0
jne 0x64620d
lea rcx, [0x00745b70]
mov qword [rdi], rcx
mov rcx, qword [rsp + 0xa8]
mov qword [rdi + 0x18], rcx
cmp dword [0x00a5f510], 0
jne 0x6461ee
mov rax, qword [rsp + 0xf0]
mov qword [rdi + 0x10], rax
mov qword [rsp + 0x128], 0
lea rax, [0x007a7280]
mov qword [rsp + 0x130], rax
mov qword [rsp + 0x138], rdi
mov rbp, qword [rsp + 0x100]
add rsp, 0x108
ret
lea rcx, [rdi + 0x10]
mov rax, rdi
mov rdi, rcx
mov rdx, rax
mov rax, qword [rsp + 0xf0]
call fcn.0045aaa0
mov rdi, rdx
jmp 0x6461bb
lea rax, [0x00745b70]
call fcn.0045aaa0
jmp 0x64619a
xor esi, esi
jmp 0x64607c
mov qword [rsp], rax
call fcn.006429c0
mov rax, qword [rsp + 0xe0]
mov qword [rsp], rax
call fcn.00647450
cmp byte [rsp + 8], 0
je 0x646365
mov rax, qword [rsp + 0xe0]
mov rdx, qword [rax + 0x18]
mov rbx, qword [rax + 0x10]
lea rcx, [rbx - 1]
cmp rcx, rdx
ja 0x646442
mov qword [rax + 0x10], rcx
mov qword [rsp], rax
call fcn.00642b70
mov rax, qword [rsp + 0xe0]
mov rcx, qword [rax + 8]
cmp qword [rax + 0x10], 1
je 0x64633f
lea rax, [0x006f7480]
mov qword [rsp], rax
call fcn.0040caf0
mov rdi, qword [rsp + 8]
mov qword [rdi + 8], 0x11
cmp dword [0x00a5f510], 0
jne 0x64632e
lea rcx, [0x00744107]
mov qword [rdi], rcx
mov rcx, qword [rsp + 0x118]
mov qword [rdi + 0x18], rcx
cmp dword [0x00a5f510], 0
jne 0x64630f
mov rax, qword [rsp + 0x110]
mov qword [rdi + 0x10], rax
mov qword [rsp + 0x128], 0
lea rax, [0x007a7280]
mov qword [rsp + 0x130], rax
mov qword [rsp + 0x138], rdi
mov rbp, qword [rsp + 0x100]
add rsp, 0x108
ret
lea rcx, [rdi + 0x10]
mov rax, rdi
mov rdi, rcx
mov rdx, rax
mov rax, qword [rsp + 0x110]
call fcn.0045aaa0
mov rdi, rdx
jmp 0x6462dc
lea rax, [0x00744107]
call fcn.0045aaa0
jmp 0x6462bb
mov rax, qword [rcx]
mov qword [rsp + 0x128], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x130], xmm0
mov rbp, qword [rsp + 0x100]
add rsp, 0x108
ret
mov rax, qword [rsp + 0xe0]
jmp 0x64626b
lea rdi, [rax + 0x30]
mov rdx, rax
mov rax, qword [rsp + 0x110]
call fcn.0045aaa0
mov rax, rdx
mov rdx, qword [rsp + 0x110]
jmp 0x645230
mov rax, qword [rsp + 0x110]
mov qword [rsp], rax
mov rcx, qword [rsp + 0x118]
mov qword [rsp + 8], rcx
call fcn.0064af10
mov rax, qword [rsp + 0x18]
mov rcx, qword [rsp + 0x10]
test rcx, rcx
je 0x6463ef
mov qword [rsp + 0x128], 0
mov qword [rsp + 0x130], rcx
mov qword [rsp + 0x138], rax
mov rbp, qword [rsp + 0x100]
add rsp, 0x108
ret
mov rax, qword [rsp + 0x110]
mov qword [rsp], rax
mov rax, qword [rsp + 0x118]
mov qword [rsp + 8], rax
movzx eax, word [rsp + 0x120]
mov word [rsp + 0x10], ax
call fcn.00645020
mov rax, qword [rsp + 0x18]
mov qword [rsp + 0x128], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x130], xmm0
mov rbp, qword [rsp + 0x100]
add rsp, 0x108
ret
call fcn.0045b4a0
mov rcx, rdx
call fcn.0045b4c0
mov eax, 2
call fcn.0045b4c0
call fcn.0045b480
mov rdx, rax
call fcn.0045b480
nop
call fcn.00458ab0
jmp fcn.006451a0