Function at 0x10059e4c0
Capabilities:
Parse credit card information

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rdi
push rsi
push rbx
sub rsp, 0x288
lea rbp, [rsp + 0x80]
movaps xmmword [rbp + 0x1d0], xmm6
movaps xmmword [rbp + 0x1e0], xmm7
movaps xmmword [rbp + 0x1f0], xmm8
mov qword [rbp + 0x250], rcx
mov r12, r8
mov qword [rbp + 0x258], rdx
mov qword [rbp + 0x268], r9
mov dword [rbp + 0x1c], 1
test r8, r8
je 0x10059eae0
movzx eax, byte [r8]
test al, al
je 0x10059eae0
movq xmm8, qword [0x1006bd130]
movq xmm7, qword [0x1006bd100]
xor r14d, r14d
mov rbx, rdx
jmp 0x10059e577
cmp rbx, r14
jbe 0x10059e564
mov r8, rbx
mov rcx, qword [rbp + 0x250]
mov rdx, r12
sub r8, r14
cmp r8, rdi
cmova r8, rdi
add rcx, r14
call sub.msys_2.0.dll_memmove
add r14, rdi
mov r12, rsi
movzx eax, byte [r12]
test al, al
je 0x10059e914
lea r15, [r12 + 1]
cmp al, 0x25
je 0x10059e5b0
mov edx, 0x25
mov rcx, r15
call sub.msys_2.0.dll_strchr
mov rdi, rax
mov rsi, rax
sub rdi, r12
test rax, rax
jne 0x10059e540
mov rcx, r12
call sub.msys_2.0.dll_strlen
mov rdi, rax
lea rsi, [r12 + rax]
jmp 0x10059e540
mov qword [rbp + 0x28], 0
movsx eax, byte [r12 + 1]
cmp al, 0x30
ja 0x10059e8c0
xor r10d, r10d
xor r8d, r8d
xor r11d, r11d
xor edi, edi
movabs rcx, 0x1288900000000
mov esi, 1
bt rcx, rax
jae 0x10059e6ea
lea rdx, [0x1006bcdf8]
nop dword [rax]
sub eax, 0x20
cmp al, 0x10
ja case.0x10059e609.1
movzx eax, al
movsxd rax, dword [rdx + rax*4]
add rax, rdx
jmp rax
mov r8d, 1
nop word cs:[rax + rax]
movsx eax, byte [r15 + 1]
add r15, 1
cmp al, 0x30
jbe 0x10059e6e0
sub eax, 0x30
cmp eax, 9
jbe 0x10059e8dc
mov qword [rbp + 8], 0
movzx r13d, byte [r15]
mov r12, r15
mov dword [rbp], 0
xor r15d, r15d
cmp r13b, 0x2e
je 0x10059e753
mov eax, r13d
xor r9d, r9d
and eax, 0xfffffffb
cmp al, 0x68
jne 0x10059e68b
movzx eax, byte [r12 + 1]
lea rdx, [r12 + 1]
cmp r13b, 0x6c
je 0x10059ea3b
mov r9d, r13d
mov r12, rdx
mov r13d, eax
cmp r13b, 0x55
je 0x10059ea59
jg 0x10059e7b2
cmp r13b, 0x44
je 0x10059e977
cmp r13b, 0x4f
jne case.0x10059eb08.1
mov eax, r8d
mov r13d, 0x6f
and eax, 1
mov byte [rbp - 8], al
jmp 0x10059ea63
movsx eax, byte [r15 + 1]
add r15, 1
mov r11d, 1
cmp al, 0x30
ja 0x10059e631
nop
bt rcx, rax
jb 0x10059e5f8
cmp al, 0x2a
jne 0x10059e631
cmp qword [rbp + 0x270], 0
lea r12, [r15 + 1]
je 0x10059eb0a
mov rcx, qword [rbp + 0x270]
lea rdx, [rbp + 0x1c]
mov dword [rbp - 8], r10d
mov dword [rbp], r8d
mov dword [rbp + 8], r11d
call fcn.10059bca0
mov r11d, dword [rbp + 8]
mov r8d, dword [rbp]
mov r10d, dword [rbp - 8]
test eax, eax
js 0x10059eb2d
movzx r13d, byte [r15 + 1]
cdqe
mov dword [rbp], 0
xor r15d, r15d
mov qword [rbp + 8], rax
cmp r13b, 0x2e
jne 0x10059e660
movzx r13d, byte [r12 + 1]
cmp r13b, 0x2a
je 0x10059f191
movsx edx, r13b
sub edx, 0x30
cmp edx, 9
jbe 0x10059f3d8
add r12, 1
mov dword [rbp], 1
jmp 0x10059e660
xor esi, esi
mov r10d, 1
jmp case.0x10059e609.1
mov r10d, 1
jmp case.0x10059e609.1
mov edi, 1
jmp case.0x10059e609.1
cmp r13b, 0x69
jne 0x10059eaeb
test r9b, r9b
sete dl
cmp qword [rbp + 0x270], 0
setne al
and dl, al
mov byte [rbp - 8], dl
jne 0x10059eb45
cmp r9b, 0x68
je 0x10059e7ed
jg 0x10059fc9d
test r9b, r9b
jne 0x10059fa6a
cmp qword [rbp + 0x270], 0
je 0x10059fd7c
mov rcx, qword [rbp + 0x270]
lea rdx, [rbp + 0x1c]
mov byte [rbp - 0x30], r9b
mov dword [rbp - 0x20], r10d
mov dword [rbp - 0x18], r8d
mov dword [rbp - 0x10], r11d
call fcn.10059bca0
mov r11d, dword [rbp - 0x10]
mov r8d, dword [rbp - 0x18]
mov r10d, dword [rbp - 0x20]
movzx r9d, byte [rbp - 0x30]
mov dword [rbp - 0x28], eax
mov eax, dword [rbp - 0x28]
test eax, eax
jle 0x1005a013c
mov qword [rbp - 0x18], 0
mov r13d, 0x64
xor eax, eax
mov ecx, 1
mov qword [rbp - 0x38], 0
mov qword [rbp - 0x20], 0
mov qword [rbp - 0x30], 0
mov dword [rbp - 0x10], 0
mov edx, dword [rbp]
test edx, edx
jne 0x10059fa45
mov edx, r11d
xor edx, 1
and edx, edi
mov byte [rbp - 0x39], dl
cmp r13b, 0x64
jne 0x10059fa38
test ecx, ecx
js 0x10059fa50
test r10d, r10d
je 0x10059fa50
cmp esi, 1
mov qword [rbp - 0x48], 0
mov r10d, 1
sbb edx, edx
and edx, 0xb
add edx, 0x20
mov byte [rbp + 0x70], dl
jmp 0x10059f5f7
sub eax, 0x30
mov esi, 1
xor r10d, r10d
xor r8d, r8d
xor r11d, r11d
xor edi, edi
cmp eax, 9
ja 0x10059e63d
movsx edx, byte [r15 + 1]
lea r12, [r15 + 1]
lea ecx, [rdx - 0x30]
mov r13d, edx
cmp ecx, 9
ja 0x10059e90b
add r12, 1
lea eax, [rax + rax*4]
lea eax, [rdx + rax*2 - 0x30]
movsx edx, byte [r12]
lea ecx, [rdx - 0x30]
mov r13d, edx
cmp ecx, 9
jbe 0x10059e8f0
mov qword [rbp + 8], rax
jmp 0x10059e64c
mov r12d, r14d
cmp qword [rbp + 0x258], 0
jne 0x10059ea00
cmp qword [rbp + 0x270], 0
je 0x10059e94a
movsxd rax, dword [rbp + 0x1c]
mov rbx, qword [rbp + 0x270]
shl rax, 4
mov edx, dword [rbx + rax - 0x10]
test edx, edx
jne 0x10059ea22
movaps xmm6, xmmword [rbp + 0x1d0]
movaps xmm7, xmmword [rbp + 0x1e0]
mov eax, r12d
movaps xmm8, xmmword [rbp + 0x1f0]
add rsp, 0x288
pop rbx
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
mov byte [rbp - 8], 0
cmp qword [rbp + 0x270], 0
je 0x10059f9e7
mov rcx, qword [rbp + 0x270]
lea rdx, [rbp + 0x1c]
mov dword [rbp - 0x20], r10d
mov dword [rbp - 0x18], r8d
mov dword [rbp - 0x10], r11d
call fcn.10059bca0
mov r11d, dword [rbp - 0x10]
mov r8d, dword [rbp - 0x18]
mov qword [rbp - 0x30], rax
mov r10d, dword [rbp - 0x20]
cmp qword [rbp - 0x30], 0
jle 0x1005a018c
mov qword [rbp - 0x18], 0
mov r13d, 0x64
xor eax, eax
mov ecx, 1
mov qword [rbp - 0x38], 0
mov r9d, 0x6c
mov qword [rbp - 0x20], 0
mov dword [rbp - 0x10], 0
mov dword [rbp - 0x28], 0
jmp 0x10059e86e
mov rax, qword [rbp + 0x258]
mov rcx, qword [rbp + 0x250]
sub rax, 1
cmp rax, r14
cmova rax, r14
mov byte [rcx + rax], 0
jmp 0x10059e925
lea rcx, str.E767:_Too_many_arguments_to_printf__
call sub.msys_intl_8.dll_libintl_gettext
mov rcx, rax
call sym.vim.exe_emsg
jmp 0x10059e94a
cmp al, 0x6c
je 0x10059ec21
mov r13d, eax
mov r9d, 0x6c
mov r12, rdx
cmp r13b, 0x55
jne 0x10059e695
mov byte [rbp - 8], 0
mov r13d, 0x75
cmp qword [rbp + 0x270], 0
je 0x10059fa0c
mov rcx, qword [rbp + 0x270]
lea rdx, [rbp + 0x1c]
mov dword [rbp - 0x28], r10d
mov dword [rbp - 0x18], r8d
mov dword [rbp - 0x10], r11d
call fcn.10059bca0
mov r11d, dword [rbp - 0x10]
mov r8d, dword [rbp - 0x18]
mov qword [rbp - 0x20], rax
mov r10d, dword [rbp - 0x28]
xor ecx, ecx
cmp qword [rbp - 0x20], 0
mov qword [rbp - 0x18], 0
mov r9d, 0x6c
setne cl
mov dword [rbp - 0x10], 0
xor eax, eax
mov qword [rbp - 0x38], 0
mov qword [rbp - 0x30], 0
mov dword [rbp - 0x28], 0
jmp 0x10059e86e
xor r12d, r12d
xor r14d, r14d
jmp 0x10059e917
lea eax, [r13 - 0x58]
cmp al, 0x20
ja case.0x10059eb08.1
lea rdx, [0x1006bce3c]
movzx eax, al
movsxd rax, dword [rdx + rax*4]
add rax, rdx
jmp rax
mov rax, qword [rbp + 0x268]
mov rcx, qword [rbp + 0x268]
mov eax, dword [rax]
add rcx, 8
mov qword [rbp + 0x268], rcx
test eax, eax
jns 0x10059e734
neg eax
movzx r13d, byte [r15 + 1]
mov r11d, 1
cdqe
mov qword [rbp + 8], rax
jmp 0x10059e64c
mov byte [rbp - 8], 0
mov r9d, 0x4c
cmp qword [rbp + 0x270], 0
je 0x10059f959
mov rcx, qword [rbp + 0x270]
lea rdx, [rbp + 0x1c]
mov byte [rbp - 0x28], r9b
mov dword [rbp - 0x20], r10d
mov dword [rbp - 0x18], r8d
mov dword [rbp - 0x10], r11d
call fcn.10059bca0
mov r11d, dword [rbp - 0x10]
mov r8d, dword [rbp - 0x18]
mov r10d, dword [rbp - 0x20]
movzx r9d, byte [rbp - 0x28]
mov qword [rbp - 0x38], rax
jmp 0x10059f979
lea eax, [r13 - 0x25]
cmp al, 0x53
ja case.0x10059ebb9.1
lea rdx, [0x1006bcec0]
movzx eax, al
movsxd rax, dword [rdx + rax*4]
add rax, rdx
jmp rax
test r13b, r13b
setne r13b
movzx r13d, r13b
jne 0x10059f173
mov qword [rbp + 8], 0
xor r15d, r15d
mov eax, dword [rbp + 8]
sub eax, r13d
sub eax, r15d
test eax, eax
jle 0x10059ec13
movsxd rsi, eax
cmp r14, rbx
jae 0x10059ec10
mov rax, rbx
mov rcx, qword [rbp + 0x250]
mov edx, 0x20
sub rax, r14
cmp rax, rsi
cmova rax, rsi
add rcx, r14
mov r8, rax
call sub.msys_2.0.dll_memset
add r14, rsi
mov rcx, qword [rbp + 0x28]
call sym.vim.exe_vim_free
jmp 0x10059e56a
movzx r13d, byte [r12 + 2]
mov r9d, 0x4c
add r12, 2
jmp 0x10059e68b
cmp qword [rbp + 0x270], 0
je case.0x10059eb08.1
test r9b, r9b
jne case.0x10059eb08.1
lea eax, [r13 - 0x58]
cmp al, 0x20
ja case.0x10059ebb9.1
lea rdx, [0x1006bd010]
movzx eax, al
movsxd rax, dword [rdx + rax*4]
add rax, rdx
jmp rax
mov r9d, 0x4c
cmp r13b, 0x70
jne 0x10059ff26
cmp qword [rbp + 0x270], 0
je 0x10059f56e
mov eax, dword [rbp + 0x1c]
mov dword [rbp - 0x10], r8d
mov dword [rbp - 8], r11d
lea ecx, [rax - 1]
movsxd rcx, ecx
shl rcx, 4
add rcx, qword [rbp + 0x270]
mov edx, dword [rcx]
test edx, edx
je 0x10059f9bc
add eax, 1
mov dword [rbp + 0x1c], eax
call sym.vim.exe_tv_get_string_chk
mov r11d, dword [rbp - 8]
mov r8d, dword [rbp - 0x10]
mov qword [rbp - 0x48], rax
jmp 0x10059f58e
mov edx, dword [rbp + 0x1c]
lea eax, [rdx - 1]
cdqe
shl rax, 4
add rax, qword [rbp + 0x270]
mov ecx, dword [rax]
test ecx, ecx
je 0x10059effa
add edx, 1
mov dword [rbp + 0x1c], edx
cmp ecx, 6
je 0x10059fa60
cmp ecx, 5
jne 0x10059f8d9
pxor xmm6, xmm6
cvtsi2sd xmm6, qword [rax + 8]
jmp 0x10059eea4
cmp r13b, 0x63
je 0x10059f424
jg 0x10059f142
cmp r13b, 0x25
jne 0x10059f0dd
mov rsi, r12
mov r13d, 1
xor r10d, r10d
xor r15d, r15d
add r12, 1
test r11d, r11d
jne 0x10059ed9e
mov eax, dword [rbp + 8]
sub eax, r13d
xor r11d, r11d
mov r9d, eax
sub r9d, r15d
test r9d, r9d
jle 0x10059ed9e
movsxd r9, r9d
cmp rbx, r14
jbe 0x10059ed98
cmp edi, 1
mov rax, rbx
mov rcx, qword [rbp + 0x250]
mov qword [rbp - 8], r10
sbb edx, edx
sub rax, r14
mov qword [rbp], r9
and edx, 0xfffffff0
add edx, 0x30
cmp rax, r9
cmova rax, r9
add rcx, r14
mov r8, rax
call sub.msys_2.0.dll_memset
mov r10, qword [rbp - 8]
mov r9, qword [rbp]
add r14, r9
xor r11d, r11d
test r15, r15
je 0x10059f0d2
test r10, r10
je 0x10059ede6
cmp r14, rbx
jae 0x10059ede3
mov rax, rbx
mov rcx, qword [rbp + 0x250]
mov rdx, rsi
mov dword [rbp - 8], r11d
sub rax, r14
mov qword [rbp], r10
cmp rax, r10
cmova rax, r10
add rcx, r14
mov r8, rax
call sub.msys_2.0.dll_memmove
mov r11d, dword [rbp - 8]
mov r10, qword [rbp]
add r14, r10
mov edi, r13d
sub edi, r10d
test r15d, r15d
jle 0x10059ee38
movsxd r9, r15d
cmp r14, rbx
jae 0x10059ee35
mov rax, rbx
mov rcx, qword [rbp + 0x250]
mov edx, 0x30
mov dword [rbp - 0x10], r11d
sub rax, r14
mov qword [rbp - 8], r10
cmp rax, r9
mov qword [rbp], r9
cmova rax, r9
add rcx, r14
mov r8, rax
call sub.msys_2.0.dll_memset
mov r11d, dword [rbp - 0x10]
mov r10, qword [rbp - 8]
mov r9, qword [rbp]
add r14, r9
test edi, edi
jle 0x10059ee72
movsxd rdi, edi
cmp r14, rbx
jae 0x10059ee6f
mov rax, rbx
mov rcx, qword [rbp + 0x250]
lea rdx, [rsi + r10]
mov dword [rbp], r11d
sub rax, r14
cmp rax, rdi
cmova rax, rdi
add rcx, r14
mov r8, rax
call sub.msys_2.0.dll_memmove
mov r11d, dword [rbp]
add r14, rdi
test r11d, r11d
je 0x10059ec13
jmp 0x10059ebd7
cmp qword [rbp + 0x270], 0
jne case.0x10059ec6a.13
mov rax, qword [rbp + 0x268]
movsd xmm6, qword [rax]
add rax, 8
mov qword [rbp + 0x268], rax
pxor xmm1, xmm1
movapd xmm2, xmm6
movapd xmm0, xmm6
mov eax, r13d
cmpltsd xmm2, xmm1
xorpd xmm0, xmm7
and eax, 0xffffffdf
andpd xmm0, xmm2
andnpd xmm2, xmm6
orpd xmm0, xmm2
cmp al, 0x47
jne 0x10059f15b
comisd xmm0, xmmword [0x1006bd110]
jb 0x10059eeef
movsd xmm2, qword [0x1006bd118]
comisd xmm2, xmm0
ja 0x10059f038
ucomisd xmm0, xmm1
jnp 0x10059fd00
cmp r13b, 0x67
mov eax, 0x45
mov r13d, 0x65
mov dword [rbp - 0x10], 1
mov byte [rbp - 0x18], 0
cmovne r13d, eax
ucomisd xmm6, xmm6
jp 0x10059fcac
movapd xmm2, xmm6
andpd xmm2, xmm8
ucomisd xmm2, qword [0x1006bd140]
jbe 0x10059f2b0
and esi, r10d
comisd xmm6, xmm1
mov edx, 0
mov dword [rbp - 0x30], r11d
lea eax, [r10 + rsi + 1]
lea rsi, [rbp + 0x70]
mov r8d, 0x15e
mov dword [rbp - 0x28], r10d
cmovbe eax, edx
movsx edx, r13b
sub edx, 0x41
cmp edx, 0x1a
lea ecx, [rax + 4]
lea rdx, [0x1006bd0c0]
cmovb eax, ecx
mov rcx, rsi
xor edi, edi
cdqe
mov rdx, qword [rdx + rax*8]
call sub.msys_2.0.dll___stpcpy_chk
mov byte [rbp - 0x20], 0
mov r10d, dword [rbp - 0x28]
sub rax, rsi
mov r11d, dword [rbp - 0x30]
mov qword [rbp - 8], rax
mov ecx, dword [rbp - 0x10]
test ecx, ecx
je 0x10059f1fb
cmp byte [rbp - 0x18], 0
je 0x10059f469
mov rax, qword [rbp - 8]
lea r13, [rsi + rax - 1]
cmp dword [rbp], 1
jne 0x10059fab1
mov rcx, qword [rbp - 8]
cmp qword [rbp + 8], rcx
jbe 0x10059f1f0
cmp byte [rbp - 0x20], 0
je 0x10059f1f0
cmp byte [rbp + 0x70], 0x2d
je 0x10059efe7
test r10d, r10d
je 0x10059f1f0
mov r15, qword [rbp + 8]
mov r10d, 1
sub r15, qword [rbp - 8]
jmp 0x10059f0bc
mov dword [rbp - 0x10], r10d
lea rcx, str.E766:_Insufficient_arguments_for_printf__
mov dword [rbp - 8], r11d
call sub.msys_intl_8.dll_libintl_gettext
mov rcx, rax
call sym.vim.exe_emsg
mov eax, r13d
pxor xmm1, xmm1
mov r11d, dword [rbp - 8]
and eax, 0xffffffdf
mov r10d, dword [rbp - 0x10]
movapd xmm6, xmm1
movapd xmm0, xmm1
cmp al, 0x47
jne 0x10059f15b
movsx eax, r13b
mov dword [rbp - 0x10], 1
sub eax, 0x41
cmp eax, 0x1a
sbb r13d, r13d
and r13d, 0xffffffe0
add r13d, 0x66
comisd xmm0, xmmword [0x1006bd120]
jbe 0x10059f41b
and esi, r10d
comisd xmm6, xmm1
mov edx, 0
mov dword [rbp], r11d
lea eax, [r10 + rsi + 1]
lea rsi, [rbp + 0x70]
mov r8d, 0x15e
cmovbe eax, edx
movsx edx, r13b
sub edx, 0x41
cmp edx, 0x1a
lea ecx, [rax + 4]
lea rdx, [0x1006bd0c0]
cmovb eax, ecx
mov rcx, rsi
xor edi, edi
xor r15d, r15d
cdqe
mov rdx, qword [rdx + rax*8]
call sub.msys_2.0.dll___stpcpy_chk
mov r11d, dword [rbp]
xor r10d, r10d
sub rax, rsi
mov qword [rbp - 8], rax
movzx edx, byte [r12]
mov r13d, dword [rbp - 8]
test dl, dl
je 0x10059ed3d
jmp 0x10059ed39
mov edi, r13d
xor r10d, r10d
jmp 0x10059ee38
cmp r13b, 0x53
jne 0x10059f148
cmp qword [rbp + 0x270], 0
je 0x10059f880
mov eax, dword [rbp + 0x1c]
lea esi, [rax - 1]
movsxd rsi, esi
shl rsi, 4
add rsi, qword [rbp + 0x270]
mov r8d, dword [rsi]
test r8d, r8d
je 0x10059fe5f
add eax, 1
mov dword [rbp - 8], r11d
mov dword [rbp + 0x1c], eax
call sym.vim.exe_get_copyID
mov rcx, rsi
lea rdx, [rbp + 0x28]
lea r8, [0x10070dc80]
mov r9d, eax
call sym.vim.exe_echo_string
mov r11d, dword [rbp - 8]
mov rsi, rax
jmp 0x10059f895
cmp r13b, 0x73
je 0x10059f0e3
mov r13d, 1
xor r10d, r10d
xor r15d, r15d
xor esi, esi
jmp 0x10059ed39
mov dword [rbp - 0x10], 0
mov byte [rbp - 0x18], 0
cmp al, 0x46
jne 0x10059ef17
jmp 0x10059f054
mov qword [rbp + 8], 0
mov rsi, r12
xor r10d, r10d
xor edi, edi
xor r15d, r15d
mov r11d, 1
jmp 0x10059ed39
cmp qword [rbp + 0x270], 0
je 0x10059f44f
mov rcx, qword [rbp + 0x270]
lea rdx, [rbp + 0x1c]
mov dword [rbp - 0x10], r10d
mov dword [rbp - 8], r8d
mov dword [rbp], r11d
call fcn.10059bca0
mov r11d, dword [rbp]
mov r8d, dword [rbp - 8]
mov r10d, dword [rbp - 0x10]
movsxd r15, eax
lea rax, [r12 + 2]
movzx r13d, byte [r12 + 2]
mov r12, rax
test r15d, r15d
jns 0x10059e777
mov dword [rbp], 0
xor r15d, r15d
jmp 0x10059e660
xor r10d, r10d
xor r15d, r15d
jmp 0x10059f0bc
cmp r13b, 0x65
mov eax, 0x45
mov rcx, rsi
mov dword [rbp - 0x10], r10d
mov edx, 0x65
mov dword [rbp], r11d
cmovne edx, eax
call sym.vim.exe_vim_strchr
mov r11d, dword [rbp]
mov r10d, dword [rbp - 0x10]
test rax, rax
mov r13, rax
je 0x10059efc0
movzx eax, byte [rax + 1]
sub eax, 0x2b
test al, 0xfd
jne 0x10059efc0
cmp byte [r13 + 2], 0x30
jne 0x10059efc0
movsx ecx, byte [r13 + 3]
call sym.vim.exe_vim_isdigit
mov r11d, dword [rbp]
mov r10d, dword [rbp - 0x10]
test eax, eax
je 0x10059efc0
movsx ecx, byte [r13 + 4]
call sym.vim.exe_vim_isdigit
mov r11d, dword [rbp]
mov r10d, dword [rbp - 0x10]
test eax, eax
je 0x10059efc0
lea r15, [r13 + 3]
mov rcx, r15
call sub.msys_2.0.dll_strlen
lea rcx, [r13 + 2]
mov rdx, r15
lea r8, [rax + 1]
call sub.msys_2.0.dll_memmove
sub qword [rbp - 8], 1
mov r11d, dword [rbp]
mov r10d, dword [rbp - 0x10]
jmp 0x10059efc0
mov byte [rbp + 0x30], 0x25
mov r9d, 1
test r10d, r10d
je 0x10059f2d3
cmp esi, 1
mov r9d, 2
sbb eax, eax
and eax, 0xb
add eax, 0x20
mov byte [rbp + 0x31], al
mov r8d, dword [rbp]
lea rax, [rbp + 0x30]
mov qword [rbp - 0x20], rax
test r8d, r8d
je 0x10059f378
cmp byte [rbp - 0x18], 0
mov eax, 0x154
je 0x10059f339
comisd xmm0, xmmword [0x1006bd148]
jbe 0x10059f339
mov dword [rbp - 0x28], r9d
mov dword [rbp - 0x20], r10d
mov dword [rbp - 8], r11d
call sub.msys_2.0.dll_log10
mov r11d, dword [rbp - 8]
mov r10d, dword [rbp - 0x20]
movsd xmm1, qword [0x1006bd150]
mov r9d, dword [rbp - 0x28]
comisd xmm0, xmm1
jae 0x10059fed8
cvttsd2si rdx, xmm0
mov eax, 0x154
sub rax, rdx
cmp r15, rax
movsxd rcx, r9d
lea rsi, [rbp + 0x30]
mov dword [rbp - 0x30], r10d
cmovbe rax, r15
lea rdx, [0x1006bcdcb]
add rcx, rsi
mov dword [rbp - 0x28], r11d
mov dword [rbp - 8], r9d
mov r8d, eax
mov qword [rbp - 0x20], rsi
call sub.msys_2.0.dll_sprintf
mov r9d, dword [rbp - 8]
mov r10d, dword [rbp - 0x30]
mov r11d, dword [rbp - 0x28]
add r9d, eax
cmp r13b, 0x46
mov eax, 0x66
movsxd rdx, r9d
mov dword [rbp - 0x30], r10d
cmovne eax, r13d
lea rsi, [rbp + 0x70]
movsd qword [rsp + 0x20], xmm6
mov r8d, 0x15e
mov rcx, rsi
mov dword [rbp - 0x28], r11d
mov byte [rbp + rdx + 0x30], al
lea eax, [r9 + 1]
mov r9, qword [rbp - 0x20]
xor edx, edx
cdqe
mov byte [rbp + rax + 0x30], 0
call sub.msys_2.0.dll___sprintf_chk
mov r10d, dword [rbp - 0x30]
mov r11d, dword [rbp - 0x28]
cdqe
mov qword [rbp - 8], rax
mov eax, edi
and eax, 1
mov byte [rbp - 0x20], al
jmp 0x10059ef98
mov r15d, edx
movsx edx, byte [r12 + 2]
lea rax, [r12 + 2]
lea ecx, [rdx - 0x30]
mov r13d, edx
cmp ecx, 9
ja 0x10059f40c
lea ecx, [r15 + r15*4]
add rax, 1
lea r15d, [rdx + rcx*2 - 0x30]
movsx edx, byte [rax]
lea ecx, [rdx - 0x30]
mov r13d, edx
cmp ecx, 9
jbe 0x10059f3f1
mov dword [rbp], 1
mov r12, rax
jmp 0x10059e660
mov byte [rbp - 0x18], 1
jmp 0x10059ef17
cmp qword [rbp + 0x270], 0
je 0x10059f848
mov rcx, qword [rbp + 0x270]
lea rdx, [rbp + 0x1c]
mov dword [rbp], r11d
call fcn.10059bca0
mov r11d, dword [rbp]
jmp 0x10059f863
mov rax, qword [rbp + 0x268]
movsxd r15, dword [rax]
add rax, 8
mov qword [rbp + 0x268], rax
jmp 0x10059f1ca
cmp r13b, 0x65
mov eax, 0x45
mov rcx, rsi
mov dword [rbp - 0x28], r10d
mov edx, 0x65
mov dword [rbp - 0x18], r11d
cmovne edx, eax
call sym.vim.exe_vim_strchr
mov r11d, dword [rbp - 0x18]
mov r10d, dword [rbp - 0x28]
test rax, rax
mov r9, rax
je 0x10059efc0
movzx eax, byte [rax + 1]
cmp al, 0x2b
jne 0x10059f4e8
lea r13, [r9 + 2]
mov dword [rbp - 0x30], r10d
mov rcx, r13
mov dword [rbp - 0x28], r11d
mov qword [rbp - 0x18], r9
call sub.msys_2.0.dll_strlen
mov r9, qword [rbp - 0x18]
mov rdx, r13
lea r8, [rax + 1]
lea rcx, [r9 + 1]
call sub.msys_2.0.dll_memmove
mov r9, qword [rbp - 0x18]
sub qword [rbp - 8], 1
mov r10d, dword [rbp - 0x30]
mov r11d, dword [rbp - 0x28]
movzx eax, byte [r9 + 1]
mov r15d, 1
cmp al, 0x2d
jne 0x10059f504
mov dword [rbp - 0x10], 2
movzx eax, byte [r9 + 2]
mov r15d, 2
add r15, r9
cmp al, 0x30
jne 0x10059f565
mov r13d, dword [rbp - 0x10]
mov dword [rbp - 0x18], r10d
mov rax, rsi
mov rsi, rbx
mov dword [rbp - 0x10], r11d
add r13d, 1
mov qword [rbp - 0x28], r9
movsxd r13, r13d
add r13, r9
mov rbx, r13
mov r13, rax
mov rcx, rbx
call sub.msys_2.0.dll_strlen
mov rdx, rbx
mov rcx, r15
lea r8, [rax + 1]
call sub.msys_2.0.dll_memmove
sub qword [rbp - 8], 1
cmp byte [r15], 0x30
je 0x10059f531
mov r11d, dword [rbp - 0x10]
mov r10d, dword [rbp - 0x18]
mov rbx, rsi
mov rsi, r13
mov r9, qword [rbp - 0x28]
lea r13, [r9 - 1]
jmp 0x10059efb6
mov rax, qword [rbp + 0x268]
mov rax, qword [rax]
mov qword [rbp - 0x48], rax
mov rax, qword [rbp + 0x268]
add rax, 8
mov qword [rbp + 0x268], rax
xor ecx, ecx
cmp qword [rbp - 0x48], 0
setne cl
mov eax, dword [rbp]
test eax, eax
jne 0x10059f7e4
mov edx, r11d
mov byte [rbp - 8], 0
xor r9d, r9d
xor edx, 1
mov dword [rbp - 0x28], 0
mov eax, edx
mov qword [rbp - 0x18], 0
mov qword [rbp - 0x38], 0
and eax, edi
mov qword [rbp - 0x20], 0
mov qword [rbp - 0x30], 0
mov dword [rbp - 0x10], 0
mov byte [rbp - 0x39], al
xor eax, eax
test ecx, ecx
je 0x10059f5f4
test r8d, r8d
jne 0x10059f826
xor r10d, r10d
mov r8d, dword [rbp]
test r8d, r8d
je 0x10059f660
test r15, r15
jne 0x10059f666
test ecx, ecx
jne 0x10059f666
cmp byte [rbp - 8], 0
mov r9, r10
jne 0x10059f7d8
xor r15d, r15d
lea rsi, [rbp + 0x70]
cmp byte [rbp - 0x39], 0
movzx edx, byte [r12]
mov r13d, r9d
je 0x10059f0c5
mov rcx, qword [rbp + 8]
add r9d, r15d
mov r8d, ecx
mov eax, ecx
sub r8d, r9d
movsxd rcx, r8d
add rcx, r15
test r8d, r8d
cmovg r15, rcx
test dl, dl
je 0x10059f7ce
xor r11d, r11d
mov edi, 1
jmp 0x10059ed39
mov r15d, 1
mov byte [rbp + 0x22], 0x25
test r9b, r9b
je 0x10059f7b7
cmp r9b, 0x4c
je 0x10059fc85
mov byte [rbp + 0x23], r9b
mov edx, 3
mov ecx, 2
mov byte [rbp + rcx + 0x22], r13b
mov byte [rbp + rdx + 0x22], 0
cmp r13b, 0x70
je 0x10059fbc4
mov edx, r13d
and edx, 0xffffffdf
cmp dl, 0x42
je 0x10059fb58
cmp r13b, 0x64
je 0x10059fbe1
cmp r9b, 0x68
je 0x10059f93e
jg 0x10059f77d
test r9b, r9b
je 0x10059f90e
cmp r9b, 0x4c
jne 0x10059f8ed
mov r8, qword [rbp - 0x18]
lea rsi, [rbp + 0x70]
lea rdx, [rbp + 0x22]
mov dword [rbp - 0x20], r11d
lea rcx, [rsi + r10]
mov qword [rbp - 0x10], r10
call sub.msys_2.0.dll_sprintf
mov r10, qword [rbp - 0x10]
mov r11d, dword [rbp - 0x20]
movsxd r9, eax
add r9, r10
lea rax, [r10 + 1]
cmp r10, r9
jae 0x10059f721
cmp byte [rbp + r10 + 0x70], 0x2d
jne 0x10059f721
lea rdx, [r10 + 2]
mov r10, rax
mov rax, rdx
cmp r9, rax
jbe 0x10059f740
cmp byte [rbp + r10 + 0x70], 0x30
jne 0x10059f740
movzx eax, byte [rbp + rax + 0x70]
lea rdx, [r10 + 2]
and eax, 0xffffffdf
cmp al, 0x58
cmove r10, rdx
mov rax, r9
sub rax, r10
cmp byte [rbp - 8], 0
je 0x10059f76d
cmp r9, r10
jbe 0x10059f759
cmp byte [rbp + r10 + 0x70], 0x30
je 0x10059f76d
mov r13d, dword [rbp]
lea rdx, [rax + 1]
test r13d, r13d
jne 0x10059fb43
mov r15, rdx
cmp r15, rax
jbe 0x10059f7c6
add r15, r10
sub r15, r9
jmp 0x10059f61d
cmp r9b, 0x6c
jne 0x10059f8ed
mov dword [rbp - 0x18], r11d
lea rsi, [rbp + 0x70]
mov r8, qword [rbp - 0x20]
lea rdx, [rbp + 0x22]
mov qword [rbp - 0x10], r10
lea rcx, [rsi + r10]
call sub.msys_2.0.dll_sprintf
mov r10, qword [rbp - 0x10]
mov r11d, dword [rbp - 0x18]
movsxd r9, eax
add r9, r10
jmp 0x10059f706
mov edx, 2
mov ecx, 1
jmp 0x10059f68b
xor r15d, r15d
jmp 0x10059f61d
mov edi, 1
jmp 0x10059ed45
mov r15d, 1
lea rsi, [rbp + 0x70]
jmp 0x10059f772
mov byte [rbp - 8], 0
xor eax, eax
xor r9d, r9d
xor edi, edi
mov byte [rbp - 0x39], 0
mov qword [rbp - 0x18], 0
mov qword [rbp - 0x38], 0
mov qword [rbp - 0x20], 0
mov qword [rbp - 0x30], 0
mov dword [rbp - 0x10], 0
mov dword [rbp - 0x28], 0
jmp 0x10059f5e7
mov edx, r13d
and edx, 0xffffffdf
cmp dl, 0x42
jne 0x10059f8fd
mov byte [rbp + 0x70], 0x30
mov r10d, 2
mov byte [rbp + 0x71], r13b
jmp 0x10059f5f7
mov rcx, qword [rbp + 0x268]
mov rax, qword [rbp + 0x268]
add rcx, 8
mov eax, dword [rax]
mov qword [rbp + 0x268], rcx
mov byte [rbp + 0x30], al
mov r13d, 1
xor r10d, r10d
xor r15d, r15d
movzx edx, byte [r12]
lea rsi, [rbp + 0x30]
jmp 0x10059f0c5
mov rax, qword [rbp + 0x268]
mov rsi, qword [rax]
add rax, 8
mov qword [rbp + 0x268], rax
test rsi, rsi
je 0x10059fd10
mov ecx, dword [rbp]
test ecx, ecx
jne 0x10059fc44
mov rcx, rsi
mov dword [rbp], r11d
call sub.msys_2.0.dll_strlen
mov r11d, dword [rbp]
mov r8, rax
cmp r13b, 0x53
je 0x10059fcdc
movzx edx, byte [r12]
mov r13d, r8d
xor r10d, r10d
xor r15d, r15d
jmp 0x10059f0c5
mov dword [rbp - 0x10], r10d
lea rcx, str.E807:_Expected_Float_argument_for_printf__
mov dword [rbp - 8], r11d
jmp 0x10059f009
lea rax, [r10 + 1]
mov r9, r10
lea rsi, [rbp + 0x70]
jmp 0x10059f721
xor r10d, r10d
cmp dl, 0x58
jne 0x10059f5f7
jmp 0x10059f835
mov dword [rbp - 0x20], r11d
lea rsi, [rbp + 0x70]
mov r8d, dword [rbp - 0x10]
lea rdx, [rbp + 0x22]
mov qword [rbp - 0x18], r10
lea rcx, [rsi + r10]
call sub.msys_2.0.dll_sprintf
mov r10, qword [rbp - 0x18]
mov r11d, dword [rbp - 0x20]
movsxd r9, eax
add r9, r10
jmp 0x10059f706
lea rsi, [rbp + 0x70]
mov dword [rbp - 0x20], r11d
movzx r8d, word [rbp - 0x10]
lea rdx, [rbp + 0x22]
mov qword [rbp - 0x18], r10
lea rcx, [rsi + r10]
jmp 0x10059f926
mov rax, qword [rbp + 0x268]
mov rax, qword [rax]
mov qword [rbp - 0x38], rax
mov rax, qword [rbp + 0x268]
add rax, 8
mov qword [rbp + 0x268], rax
cmp qword [rbp - 0x38], 0
jle 0x10059feeb
mov qword [rbp - 0x18], 0
mov r13d, 0x64
xor eax, eax
mov ecx, 1
mov qword [rbp - 0x20], 0
mov qword [rbp - 0x30], 0
mov dword [rbp - 0x10], 0
mov dword [rbp - 0x28], 0
jmp 0x10059e86e
lea rcx, str.E766:_Insufficient_arguments_for_printf__
call sub.msys_intl_8.dll_libintl_gettext
mov rcx, rax
call sym.vim.exe_emsg
mov r11d, dword [rbp - 8]
mov r8d, dword [rbp - 0x10]
xor ecx, ecx
mov qword [rbp - 0x48], 0
jmp 0x10059f598
mov rax, qword [rbp + 0x268]
mov rax, qword [rax]
mov qword [rbp - 0x30], rax
mov rax, qword [rbp + 0x268]
add rax, 8
mov qword [rbp + 0x268], rax
jmp 0x10059e9b5
mov rax, qword [rbp + 0x268]
mov rax, qword [rax]
mov qword [rbp - 0x20], rax
mov rax, qword [rbp + 0x268]
add rax, 8
mov qword [rbp + 0x268], rax
jmp 0x10059ea9d
mov qword [rbp - 0x48], 0
jmp 0x10059f5e7
mov byte [rbp - 0x39], 0
xor edi, edi
jmp 0x10059e884
mov qword [rbp - 0x48], 0
xor r10d, r10d
jmp 0x10059f5f7
movsd xmm6, qword [rax + 8]
jmp 0x10059eea4
cmp r9b, 0x4c
je 0x10059eb4f
mov r13d, 0x64
mov qword [rbp - 0x18], 0
xor eax, eax
xor ecx, ecx
mov qword [rbp - 0x38], 0
mov qword [rbp - 0x20], 0
mov qword [rbp - 0x30], 0
mov dword [rbp - 0x10], 0
mov dword [rbp - 0x28], 0
jmp 0x10059e86e
lea rax, [rbp + 0x72]
mov qword [rbp], rax
cmp r13, rax
jbe 0x10059efc0
movzx r15d, byte [r13]
mov dword [rbp - 0x10], edi
mov rdi, r13
mov r13, r12
mov qword [rbp + 0x258], rbx
mov dword [rbp - 0x18], r11d
mov ebx, r15d
mov r15, rsi
mov rsi, qword [rbp - 8]
mov dword [rbp - 0x28], r10d
jmp 0x10059fb1d
movzx ebx, byte [rdi - 1]
cmp bl, 0x2e
je 0x10059fb22
lea r12, [rdi + 1]
sub rsi, 1
mov rcx, r12
call sub.msys_2.0.dll_strlen
mov rcx, rdi
mov rdx, r12
sub rdi, 1
lea r8, [rax + 1]
call sub.msys_2.0.dll_memmove
cmp rdi, qword [rbp]
je 0x10059fb22
cmp bl, 0x30
je 0x10059faeb
mov edi, dword [rbp - 0x10]
mov r11d, dword [rbp - 0x18]
mov qword [rbp - 8], rsi
mov r12, r13
mov r10d, dword [rbp - 0x28]
mov rbx, qword [rbp + 0x258]
mov rsi, r15
jmp 0x10059efc0
cmp rdx, r15
jbe 0x10059f76d
jmp 0x10059f76a
lea rsi, [rbp + 0x30]
mov edx, 0x3f
mov r8d, 0x40
mov qword [rbp - 0x20], rsi
mov ecx, eax
mov r9, r8
and ecx, 1
sub r9, rdx
add ecx, 0x30
mov byte [rsi + rdx], cl
mov rcx, rdx
sub rdx, 1
shr rax, 1
jne 0x10059fb6b
lea rsi, [rbp + 0x70]
add rcx, qword [rbp - 0x20]
lea rax, [rsi + r10]
cmp r9d, 8
jae 0x10059fd22
test r9b, 4
jne 0x1005a0178
test r9d, r9d
je 0x10059fbbc
movzx edx, byte [rcx]
mov byte [rax], dl
test r9b, 2
jne 0x1005a012a
add r9, r10
jmp 0x10059f706
lea rsi, [rbp + 0x70]
mov dword [rbp - 0x18], r11d
mov r8, qword [rbp - 0x48]
lea rdx, [rbp + 0x22]
mov qword [rbp - 0x10], r10
lea rcx, [rsi + r10]
jmp 0x10059f79f
cmp r9b, 0x68
je 0x10059fe8d
jg 0x10059fc1d
test r9b, r9b
je 0x10059febe
cmp r9b, 0x4c
jne 0x10059f8ed
lea rsi, [rbp + 0x70]
mov dword [rbp - 0x18], r11d
mov r8, qword [rbp - 0x38]
lea rdx, [rbp + 0x22]
mov qword [rbp - 0x10], r10
lea rcx, [rsi + r10]
jmp 0x10059f79f
cmp r9b, 0x6c
jne 0x10059f8ed
lea rsi, [rbp + 0x70]
mov dword [rbp - 0x18], r11d
mov r8, qword [rbp - 0x30]
lea rdx, [rbp + 0x22]
mov qword [rbp - 0x10], r10
lea rcx, [rsi + r10]
jmp 0x10059f79f
xor r8d, r8d
test r15, r15
je 0x10059f8bc
cmp r15, 0x7fffffff
mov r8d, 0x7fffffff
mov rcx, rsi
mov dword [rbp], r11d
cmovbe r8, r15
xor edx, edx
call sub.msys_2.0.dll_memchr
mov r11d, dword [rbp]
mov r8, rax
sub r8, rsi
test rax, rax
cmove r8, r15
jmp 0x10059f8bc
mov edx, 0x6c6c
mov ecx, 3
mov word [rbp + 0x23], dx
mov edx, 4
jmp 0x10059f68b
cmp r9b, 0x6c
jne 0x10059fa74
jmp 0x10059e97b
movsx eax, r13b
mov byte [rbp - 0x20], 0
lea rsi, [rbp + 0x70]
sub eax, 0x41
mov qword [rbp - 8], 3
cmp eax, 0x1a
sbb eax, eax
xor edi, edi
and eax, 0xffdfdfe0
add eax, 0x6e616e
mov dword [rbp + 0x70], eax
jmp 0x10059ef98
cmp qword [rbp + 8], 0
jne 0x10059fe25
test r15, r15
jne 0x10059fd9f
movzx edx, byte [r12]
mov r13d, r8d
xor r10d, r10d
jmp 0x10059f0c5
je 0x10059f038
jmp 0x10059eef9
mov r8d, 6
lea rsi, [0x1006bcd98]
jmp 0x10059f8bc
mov rdx, qword [rcx]
mov qword [rax], rdx
mov edx, r9d
mov r8, qword [rcx + rdx - 8]
mov qword [rax + rdx - 8], r8
lea rdx, [rax + 8]
and rdx, 0xfffffffffffffff8
sub rax, rdx
sub rcx, rax
add eax, r9d
and eax, 0xfffffff8
mov r8, rcx
cmp eax, 8
jb 0x10059fbbc
mov qword [rbp - 0x10], r9
and eax, 0xfffffff8
mov r13d, eax
xor eax, eax
mov ecx, eax
add eax, 8
mov r9, qword [r8 + rcx]
mov qword [rdx + rcx], r9
cmp eax, r13d
jb 0x10059fd61
mov r9, qword [rbp - 0x10]
jmp 0x10059fbbc
mov rax, qword [rbp + 0x268]
mov eax, dword [rax]
mov dword [rbp - 0x28], eax
mov rax, qword [rbp + 0x268]
add rax, 8
mov qword [rbp + 0x268], rax
jmp 0x10059e82f
cmp byte [rsi], 0
mov r13, rsi
je 0x10059fe12
mov qword [rbp + 0x260], r12
mov r12, rbx
mov r13, qword [rbp + 0x260]
mov rbx, rsi
mov qword [rbp], 0
mov dword [rbp - 8], r11d
jmp 0x10059fddf
mov rax, qword [sym.vim.exe_mb_ptr2len]
mov rcx, rbx
call qword [rax]
cdqe
add rbx, rax
cmp byte [rbx], 0
je 0x10059fdfa
mov rax, qword [sym.vim.exe_mb_ptr2cells]
mov rcx, rbx
call qword [rax]
cdqe
add qword [rbp], rax
mov rcx, qword [rbp]
cmp r15, rcx
jae 0x10059fdc9
mov qword [rbp + 0x260], r13
mov r11d, dword [rbp - 8]
mov r13, rbx
mov rbx, r12
mov r12, qword [rbp + 0x260]
movzx edx, byte [r12]
sub r13d, esi
xor r10d, r10d
xor r15d, r15d
jmp 0x10059f0c5
mov rcx, rsi
mov qword [rbp - 8], r8
mov dword [rbp], r11d
call sub.msys_2.0.dll_strlen
mov edx, 0xffffffff
mov rcx, rsi
mov r13, rax
call sym.vim.exe_mb_string2cells
add r13, qword [rbp + 8]
mov r8, qword [rbp - 8]
cdqe
mov r11d, dword [rbp]
sub r13, rax
mov qword [rbp + 8], r13
jmp 0x10059fce7
lea rcx, str.E766:_Insufficient_arguments_for_printf__
mov dword [rbp], r11d
lea rsi, [0x1006bcd98]
call sub.msys_intl_8.dll_libintl_gettext
mov rcx, rax
call sym.vim.exe_emsg
mov r11d, dword [rbp]
mov r8d, 6
jmp 0x10059f8bc
mov dword [rbp - 0x18], r11d
lea rsi, [rbp + 0x70]
movsx r8d, word [rbp - 0x28]
lea rdx, [rbp + 0x22]
mov qword [rbp - 0x10], r10
lea rcx, [rsi + r10]
call sub.msys_2.0.dll_sprintf
mov r10, qword [rbp - 0x10]
mov r11d, dword [rbp - 0x18]
movsxd r9, eax
add r9, r10
jmp 0x10059f706
lea rsi, [rbp + 0x70]
mov dword [rbp - 0x18], r11d
mov r8d, dword [rbp - 0x28]
lea rdx, [rbp + 0x22]
mov qword [rbp - 0x10], r10
lea rcx, [rsi + r10]
jmp 0x10059fea6
subsd xmm0, xmm1
cvttsd2si rdx, xmm0
btc rdx, 0x3f
jmp 0x10059f331
setne cl
mov qword [rbp - 0x18], 0
mov r13d, 0x64
xor eax, eax
movzx ecx, cl
mov qword [rbp - 0x20], 0
mov qword [rbp - 0x30], 0
neg ecx
mov dword [rbp - 0x10], 0
mov dword [rbp - 0x28], 0
jmp 0x10059e86e
cmp r13b, 0x6f
sete al
and eax, r8d
mov byte [rbp - 8], al
mov eax, r13d
and eax, 0xffffffdf
cmp al, 0x42
je 0x10059ffda
cmp r13b, 0x64
je 0x10059e7d8
cmp r9b, 0x68
je 0x10059ff60
jg 0x1005a00d3
test r9b, r9b
jne 0x1005a0054
cmp qword [rbp + 0x270], 0
je 0x1005a00e2
mov rcx, qword [rbp + 0x270]
lea rdx, [rbp + 0x1c]
mov byte [rbp - 0x30], r9b
mov dword [rbp - 0x28], r10d
mov dword [rbp - 0x20], r8d
mov dword [rbp - 0x18], r11d
call fcn.10059bca0
mov r11d, dword [rbp - 0x18]
mov r8d, dword [rbp - 0x20]
mov r10d, dword [rbp - 0x28]
movzx r9d, byte [rbp - 0x30]
mov dword [rbp - 0x10], eax
mov eax, dword [rbp - 0x10]
xor ecx, ecx
mov qword [rbp - 0x18], 0
mov qword [rbp - 0x38], 0
test eax, eax
mov qword [rbp - 0x20], 0
setne cl
mov dword [rbp - 0x28], 0
xor eax, eax
mov qword [rbp - 0x30], 0
jmp 0x10059e86e
cmp qword [rbp + 0x270], 0
je 0x1005a00b2
mov rcx, qword [rbp + 0x270]
lea rdx, [rbp + 0x1c]
mov byte [rbp - 0x28], r9b
mov dword [rbp - 0x20], r10d
mov dword [rbp - 0x18], r8d
mov dword [rbp - 0x10], r11d
call fcn.10059bca0
mov r11d, dword [rbp - 0x10]
mov r8d, dword [rbp - 0x18]
mov r10d, dword [rbp - 0x20]
movzx r9d, byte [rbp - 0x28]
mov qword [rbp - 0x18], 0
xor ecx, ecx
test rax, rax
setne cl
mov qword [rbp - 0x38], 0
mov qword [rbp - 0x20], 0
mov qword [rbp - 0x30], 0
mov dword [rbp - 0x10], 0
mov dword [rbp - 0x28], 0
jmp 0x10059e86e
cmp r9b, 0x4c
jne 0x10059fa7a
cmp qword [rbp + 0x270], 0
je 0x1005a0105
mov rcx, qword [rbp + 0x270]
lea rdx, [rbp + 0x1c]
mov byte [rbp - 0x30], r9b
mov dword [rbp - 0x28], r10d
mov dword [rbp - 0x20], r8d
mov dword [rbp - 0x10], r11d
call fcn.10059bca0
mov r11d, dword [rbp - 0x10]
mov r8d, dword [rbp - 0x20]
mov r10d, dword [rbp - 0x28]
movzx r9d, byte [rbp - 0x30]
mov qword [rbp - 0x18], rax
xor ecx, ecx
cmp qword [rbp - 0x18], 0
setne cl
xor eax, eax
jmp 0x1005a0029
mov rcx, qword [rbp + 0x268]
mov rax, qword [rbp + 0x268]
add rcx, 8
mov rax, qword [rax]
mov qword [rbp + 0x268], rcx
jmp 0x1005a0019
cmp r9b, 0x6c
jne 0x10059fa7a
jmp 0x10059ea63
mov rax, qword [rbp + 0x268]
mov eax, dword [rax]
mov dword [rbp - 0x10], eax
mov rax, qword [rbp + 0x268]
add rax, 8
mov qword [rbp + 0x268], rax
jmp 0x10059ffa2
mov rax, qword [rbp + 0x268]
mov rax, qword [rax]
mov qword [rbp - 0x18], rax
mov rax, qword [rbp + 0x268]
add rax, 8
mov qword [rbp + 0x268], rax
jmp 0x1005a00a1
mov edx, r9d
movzx ecx, word [rcx + rdx - 2]
mov word [rax + rdx - 2], cx
jmp 0x10059fbbc
setne cl
mov qword [rbp - 0x18], 0
mov r13d, 0x64
xor eax, eax
movzx ecx, cl
mov qword [rbp - 0x38], 0
mov qword [rbp - 0x20], 0
neg ecx
mov qword [rbp - 0x30], 0
mov dword [rbp - 0x10], 0
jmp 0x10059e86e
mov edx, dword [rcx]
mov dword [rax], edx
mov edx, r9d
mov ecx, dword [rcx + rdx - 4]
mov dword [rax + rdx - 4], ecx
jmp 0x10059fbbc
setne cl
mov qword [rbp - 0x18], 0
mov r13d, 0x64
xor eax, eax
movzx ecx, cl
mov qword [rbp - 0x38], 0
mov r9d, 0x6c
mov qword [rbp - 0x20], 0
neg ecx
mov dword [rbp - 0x10], 0
mov dword [rbp - 0x28], 0
jmp 0x10059e86e