Function at 0x1800a8f40
Capabilities:
Parse credit card information

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x27]
sub rsp, 0xc0
mov eax, dword [rbp + 0x77]
mov r12, rdx
movzx edx, byte [rbp + 0x77]
mov r15, r9
mov dword [rbp - 0x4d], edx
mov r14, r8
mov r13, rcx
mov esi, eax
xor edi, edi
lea rbx, [0x180000000]
add eax, 0xffffffee
mov r9d, 0xffffc901
movabs r8, 0x100003600
cmp esi, eax
jbe case.0x1800a8fbe.38
lea eax, [rsi - 0x26]
cmp eax, 0x5e
ja case.0x1800a8fbe.53
movzx eax, byte [rbx + rax + 0xaa224]
mov ecx, dword [rbx + rax*4 + 0xaa1e4]
add rcx, rbx
jmp rcx
movzx ecx, byte [r14]
xor edx, edx
movzx eax, cl
neg al
movzx eax, al
div ecx
mov eax, dword [rbp + 0x77]
dec esi
mov dword [rbp - 0x4d], edx
jmp 0x1800a8f7c
cmp dword [r14], 1
jne case.0x1800a8fbe.53
mov ecx, 0x9e
nop dword [rax]
mov eax, ecx
sub eax, 0x9e
je 0x1800a9004
cmp eax, 1
je case.0x1800a8fbe.38
jmp 0x1800a9008
mov byte [rbp - 0x59], 1
inc ecx
cmp ecx, 0xa0
jb 0x1800a8ff0
mov eax, dword [rbp + 0x77]
dec esi
jmp 0x1800a8f7c
mov rax, qword [rbp - 0x39]
lea r9, [rbp - 0x31]
mov rdx, r14
mov rcx, r12
lea rdi, [rax + 8]
lea rbx, [rax + 4]
mov qword [rsp + 0x28], rdi
mov r8, rbx
mov dword [rsp + 0x20], 0x98
call fcn.1800994a0
test al, al
jne 0x1800aa040
mov qword [rsp + 0x28], r12
lea r8, [rbp - 0x31]
mov r9, rdi
mov dword [rsp + 0x20], 0x12b
mov rdx, rbx
mov rcx, r14
call fcn.18000af90
test al, al
jne 0x1800aa040
lea rax, [rbp - 0x31]
mov r9, r12
mov r8, r14
mov qword [rsp + 0x20], rax
mov edx, 0x12b
mov rcx, rbx
call fcn.18002b210
test al, al
jne 0x1800aa040
xor edx, edx
mov qword [rsp + 0x20], r12
xor r9d, r9d
xor r8d, r8d
lea ecx, [rdx + 0x59]
call fcn.18004f870
lea r8, [rbp - 0x31]
mov byte [rbp - 0x61], al
mov edx, 0x9f
lea rcx, [rbp - 0x61]
call fcn.1800578b0
mov byte [rbp - 0x59], al
dec esi
mov eax, dword [rbp + 0x77]
jmp 0x1800a8f7c
movzx eax, word [r14]
dec esi
mov word [r12 + 8], ax
mov eax, dword [rbp + 0x77]
jmp 0x1800a8f7c
mov rax, qword [r12 + 0x58]
dec esi
mov rax, qword [rax + 0x10]
mov qword [rbp - 0x39], rax
mov eax, dword [rbp + 0x77]
jmp 0x1800a8f7c
xorps xmm0, xmm0
xor eax, eax
mov qword [rbp + 0x17], rax
dec esi
mov eax, dword [rbp + 0x77]
movups xmmword [rbp - 0x31], xmm0
movups xmmword [rbp - 0x21], xmm0
movsd xmm0, qword [rbp + 0x17]
movsd qword [rbp - 0x11], xmm0
jmp 0x1800a8f7c
mov rax, qword [rbp + 0x7f]
mov rax, qword [rax]
cmp qword [r15], rax
jae case.0x1800a8fbe.53
mov edi, 0x83
mov eax, edi
sub eax, 0x83
je 0x1800a9150
cmp eax, 1
jne 0x1800a92a5
inc qword [r15]
jmp 0x1800a92a5
mov rax, qword [r15]
movzx ecx, byte [rax + r13]
cmp cl, 0x29
jne 0x1800a91e9
mov ebx, 0x6d
mov eax, ebx
sub eax, 0x6d
je 0x1800a91b2
sub eax, 1
je 0x1800a9193
sub eax, 1
je 0x1800a9182
cmp eax, 1
je case.0x1800a8fbe.51
jmp 0x1800a91cd
mov dword [r12 + 0x88], 0
inc qword [r15]
jmp 0x1800a91cd
inc qword [r12 + 0xd0]
mov rax, qword [r12 + 0xc0]
test rax, rax
je 0x1800a91cd
mov rdx, r14
mov rcx, r12
call rax
jmp 0x1800a91cd
mov rax, qword [r12 + 0x78]
mov rcx, qword [rax + 0x18]
sub rcx, qword [r14 + 8]
add rcx, qword [r15]
mov qword [r14 + 0x10], rcx
mov dword [r14], 7
inc ebx
cmp ebx, 0x71
jb 0x1800a9166
movabs r8, 0x100003600
mov r9d, 0xffffc901
jmp 0x1800a92a5
cmp cl, 0x20
ja 0x1800a9259
movsx rax, cl
bt r8, rax
jae 0x1800a9259
mov edx, 0x31
nop dword [rax]
cmp edx, 0x31
je 0x1800a9229
cmp edx, 0x1afd
jne 0x1800a9249
nop dword [rax]
inc qword [r15]
mov rax, qword [r15]
mov esi, 0x83
mov qword [rbp - 0x59], rax
dec esi
mov eax, dword [rbp + 0x77]
jmp 0x1800a8f7c
mov rax, qword [r12 + 0x78]
mov dword [r12 + 0x88], 0x5e
mov rcx, qword [rax + 0x18]
sub rcx, qword [r14 + 8]
add rcx, qword [r15]
mov qword [r14 + 0x10], rcx
add edx, 0x1acc
cmp edx, 0x3598
jbe 0x1800a9200
jmp 0x1800a92a5
cmp cl, 0x22
je 0x1800a927c
lea eax, [rcx - 0x27]
cmp al, 1
jbe 0x1800a927c
cmp cl, 0x1f
ja 0x1800a9270
bt r9d, ecx
jb 0x1800a927c
cmp cl, 0x7f
je 0x1800a927c
cmp cl, 0x5c
je 0x1800a9210
jmp 0x1800a92a5
mov ecx, 0x22
mov eax, ecx
sub eax, 0x22
je 0x1800a928f
cmp eax, 1
je case.0x1800a8fbe.51
jmp 0x1800a929e
mov dword [r12 + 0x88], 0x60
inc qword [r15]
inc ecx
cmp ecx, 0x24
jb 0x1800a9281
inc edi
cmp edi, 0x85
jb 0x1800a9136
mov rax, qword [rbp + 0x7f]
mov rax, qword [rax]
cmp qword [r15], rax
jb 0x1800a9131
mov eax, dword [rbp + 0x77]
dec esi
jmp 0x1800a8f7c
movzx ecx, byte [r14 + 1]
test cl, cl
jne 0x1800a92e5
movzx eax, byte [r14]
movzx eax, byte [rax + r12 + 0x90]
jmp 0x1800a9304
movzx eax, byte [r14]
lea r8, [rbp - 0x61]
mov byte [rbp - 0x69], cl
xor r9d, r9d
lea rcx, [rbp - 0x69]
mov byte [rbp - 0x61], al
mov edx, 0xd4
call fcn.1800b4ef0
sub eax, 5
cmp eax, 0x18
ja case.0x1800a9324.13
cdqe
movzx eax, byte [rbx + rax + 0xaa2a8]
mov ecx, dword [rbx + rax*4 + 0xaa284]
add rcx, rbx
jmp rcx
movzx eax, byte [r14 + 1]
movzx r8d, byte [r14]
movzx ecx, byte [rax + rbx + 0xf1450]
mov eax, r8d
shr eax, 5
and r8d, 0x1f
lea eax, [rax + rcx*8]
mov eax, dword [rbx + rax*4 + 0xf0f50]
bt eax, r8d
jb case.0x1800a9324.11
mov ecx, 0xeb
mov eax, ecx
sub eax, 0xeb
je 0x1800a936c
cmp eax, 0x58
jne 0x1800a936f
mov dword [rbp - 0x59], edi
jmp case.0x1800a8fbe.38
mov qword [r15], r14
add ecx, 0x58
cmp ecx, 0x19b
jb 0x1800a9356
nop word [rax + rax]
add r14, 2
mov eax, dword [rbp + 0x77]
mov esi, 0x28
dec esi
mov dword [rbp - 0x51], edi
jmp 0x1800a8f7c
mov r8, r13
mov edx, 0xa2
sub r8, r14
mov eax, edx
sub eax, 0xa2
je 0x1800a93f3
sub eax, 0x51
je 0x1800a93b6
cmp eax, 0x51
je case.0x1800a8fbe.40
jmp 0x1800a93fd
mov ecx, 0x12e
nop dword [rax + rax]
mov eax, ecx
sub eax, 0x12c
je case.0x1800a8fbe.38
sub eax, 1
je 0x1800a93dc
cmp eax, 1
jne 0x1800a93df
mov qword [r15], r14
jmp 0x1800a93df
mov dword [rbp - 0x59], edi
dec ecx
cmp ecx, 0x12b
ja 0x1800a93c0
add r14, 2
sub r8, 2
jmp 0x1800a93fd
cmp r8, 2
jl 0x1800a9880
add edx, 0x51
cmp edx, 0x195
jb 0x1800a93a1
mov ecx, 0x6a
nop dword [rax]
cmp ecx, 0x6a
je 0x1800a9462
cmp ecx, 0x218a
je 0x1800a943b
cmp ecx, 0x42aa
jne 0x1800a9472
mov eax, dword [rbp + 0x77]
add r14, 3
mov esi, 0x28
mov dword [rbp - 0x51], edi
dec esi
jmp 0x1800a8f7c
mov eax, 0x62
cmp eax, 0x62
je 0x1800a9450
cmp eax, 0x7e
je case.0x1800a8fbe.38
jmp 0x1800a9456
mov qword [r15], r14
mov dword [rbp - 0x59], edi
add eax, 0x1c
cmp eax, 0x9a
jb 0x1800a9440
jmp 0x1800a9472
mov rax, r13
sub rax, r14
cmp rax, 3
jl 0x1800a9880
add ecx, 0x2120
cmp ecx, 0x6360
jbe 0x1800a9410
mov edx, 0xa7
cmp edx, 0xa7
je 0x1800a94ab
cmp edx, 0x167
jne 0x1800a9509
mov eax, dword [rbp + 0x77]
add r14, 4
mov esi, 0x28
mov dword [rbp - 0x51], edi
dec esi
jmp 0x1800a8f7c
mov rax, r13
sub rax, r14
cmp rax, 4
jge 0x1800a94e0
mov ecx, 0x15
nop dword [rax]
mov eax, ecx
sub eax, 0x15
je 0x1800a94d2
cmp eax, 1
je case.0x1800a8fbe.38
jmp 0x1800a94d9
mov dword [rbp - 0x59], 0xfffffffe
inc ecx
cmp ecx, 0x17
jb 0x1800a94c0
mov ecx, 0x3e
mov eax, ecx
sub eax, 0x3c
je case.0x1800a8fbe.38
sub eax, 1
je 0x1800a94ff
cmp eax, 1
jne 0x1800a9502
mov qword [r15], r14
jmp 0x1800a9502
mov dword [rbp - 0x59], edi
dec ecx
cmp ecx, 0x3b
ja 0x1800a94e5
add edx, 0xc0
cmp edx, 0x227
jb 0x1800a9485
mov ebx, 0x11f
mov eax, ebx
sub eax, 0x11f
je 0x1800a9544
sub eax, 0x71
je 0x1800a953c
cmp eax, 0x71
je 0x1800a9364
jmp 0x1800a95f7
mov qword [r15], r14
jmp 0x1800a95f7
add r14, 2
cmp r14, r13
jne 0x1800a9577
mov eax, 0x4a
cmp eax, 0x4a
je 0x1800a9564
cmp eax, 0x290c
je case.0x1800a8fbe.38
jmp 0x1800a956b
mov dword [rbp - 0x59], 0xffffffff
add eax, 0x28c2
cmp eax, 0x5184
jbe 0x1800a9552
movzx ecx, byte [r14 + 1]
test cl, cl
jne 0x1800a958f
movzx eax, byte [r14]
movzx eax, byte [rax + r12 + 0x90]
jmp 0x1800a95ae
movzx eax, byte [r14]
lea r8, [rbp - 0x69]
mov byte [rbp - 0x61], cl
xor r9d, r9d
lea rcx, [rbp - 0x61]
mov byte [rbp - 0x69], al
mov edx, 0xd4
call fcn.1800b4ef0
cmp eax, 0x14
je 0x1800a95d7
cmp eax, 0x1b
jne 0x1800a95f7
lea r8, [r14 + 2]
mov qword [rsp + 0x20], r15
mov r9, r12
lea edx, [rax + 0x2b]
mov rcx, r13
call fcn.180043510
mov dword [rbp - 0x59], eax
jmp case.0x1800a8fbe.38
mov eax, 0x115
nop dword [rax]
cmp eax, 0x115
je 0x1800aa07d
add eax, 0x96
cmp eax, 0x1ab
jb 0x1800a95e0
add ebx, 0x71
cmp ebx, 0x272
jb 0x1800a9520
mov eax, 0x44
nop dword [rax + rax]
cmp eax, 0x44
je 0x1800aa0a7
add eax, 3
cmp eax, 0x47
jb 0x1800a9610
mov ebx, 4
mov eax, ebx
sub eax, 4
je 0x1800a9638
cmp eax, 1
je case.0x1800a8fbe.38
jmp 0x1800a9655
lea rdx, [r14 + 2]
mov qword [rsp + 0x20], r12
mov r9d, 0xe3
mov r8, r15
mov rcx, r13
call fcn.1800885b0
mov dword [rbp - 0x59], eax
inc ebx
cmp ebx, 6
jb 0x1800a9626
mov eax, 0x129
cmp eax, 0x129
je 0x1800a9675
cmp eax, 0x72db
je 0x1800a9364
jmp 0x1800a9678
mov qword [r15], r14
add eax, 0x71b2
cmp eax, 0xe364
jbe 0x1800a9661
mov eax, dword [rbp + 0x77]
dec esi
jmp 0x1800a8f7c
cmp dword [r14 + 0x14], 0
je 0x1800a9699
mov dword [r14 + 0x14], edi
movzx eax, byte [r12]
lea r8, [rbp - 0x69]
mov r9d, 0x81
mov byte [rbp - 0x69], al
mov rdx, r14
xor ecx, ecx
call fcn.1800d2260
mov dword [rbp - 0x59], eax
dec esi
mov eax, dword [rbp + 0x77]
jmp 0x1800a8f7c
cmp r14, r13
jne case.0x1800a8fbe.53
nop dword [rax + rax]
mov dword [rbp - 0x59], 0xffffffff
jmp case.0x1800a8fbe.38
cmp r14, r13
je 0x1800aa02b
movzx ecx, byte [r14 + 1]
test cl, cl
jne 0x1800a9701
movzx eax, byte [r14]
movzx eax, byte [rax + r12 + 0x90]
jmp 0x1800a9720
movzx eax, byte [r14]
lea r8, [rbp - 0x69]
mov byte [rbp - 0x61], cl
xor r9d, r9d
lea rcx, [rbp - 0x61]
mov byte [rbp - 0x69], al
mov edx, 0xd4
call fcn.1800b4ef0
sub eax, 5
cmp eax, 0x18
ja case.0x1800a9738.8
cdqe
mov ecx, dword [rbx + rax*4 + 0xaa2c4]
add rcx, rbx
jmp rcx
movzx eax, byte [r14 + 1]
movzx r8d, byte [r14]
movzx ecx, byte [rax + rbx + 0xf1550]
mov eax, r8d
shr eax, 5
and r8d, 0x1f
lea eax, [rax + rcx*8]
mov eax, dword [rbx + rax*4 + 0xf0f50]
bt eax, r8d
jb case.0x1800a9738.22
mov eax, 0x7a
nop word [rax + rax]
cmp eax, 0x7a
je 0x1800a9782
cmp eax, 0x48ea
je case.0x1800a8fbe.38
jmp 0x1800a9788
mov qword [r15], r14
mov dword [rbp - 0x59], edi
add eax, 0x4870
cmp eax, 0x90e0
jbe 0x1800a9770
mov eax, 0x7f
nop dword [rax]
cmp eax, 0x7f
je 0x1800a97d9
add eax, 0x1f41
cmp eax, 0x1f41
jbe 0x1800a97a0
mov rdx, r13
mov ecx, 0x127
sub rdx, r14
nop dword [rax]
mov eax, ecx
sub eax, 0x127
je 0x1800a97f1
sub eax, 1
je 0x1800a97e7
cmp eax, 1
je 0x1800aa021
jmp 0x1800a9847
add r14, 2
mov esi, 0x27
jmp case.0x1800a8fbe.39
add r14, 2
sub rdx, 2
jmp 0x1800a9847
cmp rdx, 2
jge 0x1800a9813
mov eax, 0x9f
nop dword [rax]
cmp eax, 0x9f
je 0x1800a9880
add eax, 0x3924
cmp eax, 0x3924
jbe 0x1800a9800
mov eax, 0xab
cmp eax, 0xab
je 0x1800a9838
cmp eax, 0xc06
je 0x1800a9833
cmp eax, 0x1761
je case.0x1800a8fbe.38
jmp 0x1800a983b
mov dword [rbp - 0x59], edi
jmp 0x1800a983b
mov qword [r15], r14
add eax, 0xb5b
cmp eax, 0x2211
jbe 0x1800a9818
inc ecx
cmp ecx, 0x12a
jb 0x1800a97c0
mov r8, r13
mov edx, 0x11b
sub r8, r14
mov eax, edx
sub eax, 0x119
je 0x1800aa021
sub eax, 1
je 0x1800a988c
cmp eax, 1
jne 0x1800a98be
cmp r8, 3
jge 0x1800a98be
nop dword [rax]
mov dword [rbp - 0x59], 0xfffffffe
jmp case.0x1800a8fbe.38
mov ecx, 0x8e
mov eax, ecx
sub eax, 0x8e
je 0x1800a98a5
cmp eax, 0x7c
je case.0x1800a8fbe.38
jmp 0x1800a98ab
mov qword [r15], r14
mov dword [rbp - 0x59], edi
add ecx, 0x7c
cmp ecx, 0x186
jb 0x1800a9891
add r14, 3
sub r8, 3
dec edx
cmp edx, 0x118
ja 0x1800a9860
mov r8, r13
mov edx, 0x40
sub r8, r14
cmp edx, 0x40
je 0x1800a9928
cmp edx, 0x2c40
je 0x1800a98ee
cmp edx, 0x5840
je 0x1800aa021
jmp 0x1800a9932
mov ecx, 0xda
mov eax, ecx
sub eax, 0xda
je 0x1800a9911
sub eax, 1
je 0x1800a990c
cmp eax, 1
je case.0x1800a8fbe.38
jmp 0x1800a9914
mov dword [rbp - 0x59], edi
jmp 0x1800a9914
mov qword [r15], r14
inc ecx
cmp ecx, 0xdd
jb 0x1800a98f3
add r14, 4
sub r8, 4
jmp 0x1800a9932
cmp r8, 4
jl 0x1800a9880
add edx, 0x2c00
cmp edx, 0x8400
jbe 0x1800a98d3
mov edx, 0x10b
nop word [rax + rax]
cmp edx, 0x10b
je 0x1800a9c49
cmp edx, 0xa7eb
je 0x1800a9c43
cmp edx, 0x14ecb
je 0x1800a9c21
cmp edx, 0x1f5ab
je 0x1800a998d
cmp edx, 0x29c8b
je 0x1800aa021
jmp 0x1800a9c7f
movzx ecx, byte [r14 + 1]
test cl, cl
jne 0x1800a99a5
movzx eax, byte [r14]
movzx eax, byte [rax + r12 + 0x90]
jmp 0x1800a99c4
movzx eax, byte [r14]
lea r8, [rbp - 0x69]
mov byte [rbp - 0x49], cl
xor r9d, r9d
lea rcx, [rbp - 0x49]
mov byte [rbp - 0x69], al
mov edx, 0xd4
call fcn.1800b4ef0
sub eax, 5
cmp eax, 0x18
ja case.0x1800a99e4.10
cdqe
movzx eax, byte [rbx + rax + 0xaa340]
mov ecx, dword [rbx + rax*4 + 0xaa328]
add rcx, rbx
jmp rcx
movzx eax, byte [r14 + 1]
movzx r8d, byte [r14]
movzx ecx, byte [rax + rbx + 0xf1450]
mov eax, r8d
shr eax, 5
and r8d, 0x1f
lea eax, [rax + rcx*8]
mov eax, dword [rbx + rax*4 + 0xf0f50]
bt eax, r8d
jb case.0x1800a99e4.8
mov ecx, 0x3a
nop word [rax + rax]
mov eax, ecx
sub eax, 0x39
je 0x1800a9364
cmp eax, 1
jne 0x1800a9a33
mov qword [r15], r14
dec ecx
cmp ecx, 0x38
ja 0x1800a9a20
mov eax, 0x2b
nop
cmp eax, 0x2b
je 0x1800a9a50
cmp eax, 0x6b
je 0x1800a9c1a
jmp 0x1800a9a54
add r14, 2
add eax, 0x40
cmp eax, 0xab
jb 0x1800a9a40
mov edx, 0x10
mov eax, edx
sub eax, 0xf
je 0x1800a9adc
cmp eax, 1
jne 0x1800a9aaf
mov rax, r13
sub rax, r14
cmp rax, 2
jl 0x1800a9880
mov ecx, 0xa0
mov eax, ecx
sub eax, 0xa0
je 0x1800a9aa2
sub eax, 1
je 0x1800a9a9d
cmp eax, 1
je case.0x1800a8fbe.38
jmp 0x1800a9aa5
mov dword [rbp - 0x59], edi
jmp 0x1800a9aa5
mov qword [r15], r14
inc ecx
cmp ecx, 0xa3
jb 0x1800a9a84
dec edx
cmp edx, 0xe
ja 0x1800a9a63
mov edx, 0x11
nop dword [rax + rax]
cmp edx, 0x11
je 0x1800a9aea
cmp edx, 0x56
jne 0x1800a9b52
add r14, 3
mov edx, 0x1f5ab
jmp 0x1800a9c7f
add r14, 2
mov edx, 0x1f5ab
jmp 0x1800a9c7f
mov rax, r13
sub rax, r14
cmp rax, 3
jge 0x1800a9b23
mov ecx, 0x96
nop dword [rax + rax]
mov eax, ecx
sub eax, 0x95
je case.0x1800a8fbe.38
cmp eax, 1
jne 0x1800a9b19
mov dword [rbp - 0x59], 0xfffffffe
dec ecx
cmp ecx, 0x94
ja 0x1800a9b00
mov ecx, 0xeb
nop dword [rax + rax]
mov eax, ecx
sub eax, 0xea
je case.0x1800a8fbe.38
cmp eax, 1
jne 0x1800a9b48
mov qword [r15], r14
mov dword [rbp - 0x59], edi
dec ecx
cmp ecx, 0xe9
ja 0x1800a9b30
add edx, 0x45
cmp edx, 0x9b
jb 0x1800a9ac0
mov r8, r13
mov edx, 0x86
sub r8, r14
nop dword [rax]
mov eax, edx
sub eax, 0x84
je 0x1800a9c1a
sub eax, 1
je 0x1800a9be5
cmp eax, 1
jne 0x1800a9bed
cmp r8, 4
jge 0x1800a9bb5
mov ecx, 0xfc
mov eax, ecx
sub eax, 0xfb
je case.0x1800a8fbe.38
cmp eax, 1
jne 0x1800a9bab
mov dword [rbp - 0x59], 0xfffffffe
dec ecx
cmp ecx, 0xfa
ja 0x1800a9b92
mov ecx, 0x73
nop word [rax + rax]
mov eax, ecx
sub eax, 0x73
je 0x1800a9bd2
cmp eax, 0x1b
je case.0x1800a8fbe.38
jmp 0x1800a9bd8
mov qword [r15], r14
mov dword [rbp - 0x59], edi
add ecx, 0x1b
cmp ecx, 0xa9
jb 0x1800a9bc0
jmp 0x1800a9bed
add r14, 4
sub r8, 4
dec edx
cmp edx, 0x83
ja 0x1800a9b70
mov ecx, 0x5a
mov eax, ecx
sub eax, 0x59
je 0x1800a9364
cmp eax, 1
jne 0x1800a9c13
mov qword [r15], r14
dec ecx
cmp ecx, 0x58
ja 0x1800a9c00
mov edx, 0x1f5ab
jmp 0x1800a9c7f
cmp r14, r13
jne 0x1800a9c7f
mov eax, 0x35
nop dword [rax + rax]
cmp eax, 0x35
je 0x1800a96d0
add eax, 0x26
cmp eax, 0x5b
jb 0x1800a9c30
jmp 0x1800a9c7f
add r14, 2
jmp 0x1800a9c7f
cmp dword [rbp - 0x51], 0
je 0x1800a9c78
mov ecx, 0x86
mov eax, ecx
sub eax, 0x86
je 0x1800a9c68
cmp eax, 1
je case.0x1800a8fbe.38
jmp 0x1800a9c6e
mov qword [r15], r14
mov dword [rbp - 0x59], edi
inc ecx
cmp ecx, 0x88
jb 0x1800a9c54
mov dword [rbp - 0x51], 1
add edx, 0xa6e0
cmp edx, 0x34260
jbe 0x1800a9950
add r14, 2
cmp r14, r13
je 0x1800a96d0
movzx ecx, byte [r14 + 1]
test cl, cl
jne 0x1800a9cb6
movzx eax, byte [r14]
movzx eax, byte [rax + r12 + 0x90]
jmp 0x1800a9cd5
movzx eax, byte [r14]
lea r8, [rbp - 0x69]
mov byte [rbp - 0x41], cl
xor r9d, r9d
lea rcx, [rbp - 0x41]
mov byte [rbp - 0x69], al
mov edx, 0xd4
call fcn.1800b4ef0
sub eax, 5
cmp eax, 0x18
ja case.0x1800a9cf5.13
cdqe
movzx eax, byte [rbx + rax + 0xaa380]
mov ecx, dword [rbx + rax*4 + 0xaa35c]
add rcx, rbx
jmp rcx
mov r8, r13
mov edx, 0xf8
sub r8, r14
mov eax, edx
sub eax, 0xf8
je 0x1800a9d25
sub eax, 1
je 0x1800a9d1b
cmp eax, 1
je 0x1800aa14f
jmp 0x1800a9d84
add r14, 2
sub r8, 2
jmp 0x1800a9d84
cmp r8, 2
jge 0x1800a9d53
mov ecx, 0xbf
mov eax, ecx
sub eax, 0xbe
je case.0x1800a8fbe.38
cmp eax, 1
jne 0x1800a9d49
mov dword [rbp - 0x59], 0xfffffffe
dec ecx
cmp ecx, 0xbd
ja 0x1800a9d30
mov ecx, 0xc0
nop dword [rax + rax]
mov eax, ecx
sub eax, 0xc0
je 0x1800a9d74
cmp eax, 1
je case.0x1800a8fbe.38
jmp 0x1800a9d7a
mov qword [r15], r14
mov dword [rbp - 0x59], edi
inc ecx
cmp ecx, 0xc2
jb 0x1800a9d60
inc edx
cmp edx, 0xfb
jb 0x1800a9d02
mov r8, r13
mov edx, 0x94
sub r8, r14
nop dword [rax]
cmp edx, 0x94
je 0x1800a9dc8
cmp edx, 0x123
je 0x1800a9dbe
cmp edx, 0x1b2
je 0x1800aa14f
jmp 0x1800a9e25
add r14, 3
sub r8, 3
jmp 0x1800a9e25
cmp r8, 3
jge 0x1800a9df6
mov ecx, 0xbc
mov eax, ecx
sub eax, 0xbb
je case.0x1800a8fbe.38
cmp eax, 1
jne 0x1800a9dec
mov dword [rbp - 0x59], 0xfffffffe
dec ecx
cmp ecx, 0xba
ja 0x1800a9dd3
mov ecx, 0x124
nop dword [rax + rax]
mov eax, ecx
sub eax, 0x124
je 0x1800a9e14
cmp eax, 0x19
je case.0x1800a8fbe.38
jmp 0x1800a9e1a
mov qword [r15], r14
mov dword [rbp - 0x59], edi
add ecx, 0x19
cmp ecx, 0x156
jb 0x1800a9e00
add edx, 0x8f
cmp edx, 0x241
jb 0x1800a9da0
mov ecx, 0x19
nop dword [rax]
mov eax, ecx
sub eax, 0x18
je 0x1800aa0c9
cmp eax, 1
jne 0x1800a9eab
mov rax, r13
sub rax, r14
cmp rax, 4
jge 0x1800a9e88
mov eax, 0xc3
cmp eax, 0xc3
je 0x1800a9e75
cmp eax, 0x6db
je case.0x1800a8fbe.38
jmp 0x1800a9e7c
mov dword [rbp - 0x59], 0xfffffffe
add eax, 0x618
cmp eax, 0xc30
jbe 0x1800a9e61
mov eax, 0x2d
nop dword [rax]
cmp eax, 0x2d
je 0x1800a9ea0
cmp eax, 0x3c
je 0x1800a9364
jmp 0x1800a9ea3
mov qword [r15], r14
add eax, 0xf
cmp eax, 0x4b
jb 0x1800a9e90
dec ecx
cmp ecx, 0x17
ja 0x1800a9e40
lea rax, [r14 + 2]
mov ecx, 0x89
mov qword [r15], rax
add ecx, 0x3584
jmp 0x1800a9ecb
mov ecx, 0x89
cmp ecx, 0x6b08
ja case.0x1800a9738.17
cmp ecx, 0x89
je case.0x1800a9cf5.9
cmp ecx, 0x360d
jne 0x1800a9ebe
mov dword [rbp - 0x59], 2
jmp case.0x1800a8fbe.38
mov ecx, 0x64
cmp ecx, 0x364
jae case.0x1800a9738.8
cmp ecx, 0x1e4
ja 0x1800a9fbb
je 0x1800a9f72
cmp ecx, 0x64
je case.0x1800a9cf5.10
cmp ecx, 0xe4
je 0x1800a9f5f
cmp ecx, 0x164
jne 0x1800a9fe5
cmp r14, r13
jne 0x1800a9fe5
mov eax, 0x11
cmp eax, 0x11
je 0x1800a9f47
cmp eax, 0x5b6
je case.0x1800a8fbe.38
jmp 0x1800a9f4e
mov dword [rbp - 0x59], 0xffffffff
add eax, 0x5a5
cmp eax, 0xb4a
jbe 0x1800a9f35
sub ecx, 0xffffff80
jmp 0x1800a9ef4
add r14, 2
sub ecx, 0xffffff80
jmp 0x1800a9ef4
mov ecx, 0x64
sub ecx, 0xffffff80
jmp 0x1800a9ef4
cmp byte [r14 + 1], 0
jne 0x1800a9f7f
cmp byte [r14], 0x3e
je 0x1800a9fe5
mov eax, 0x126
cmp eax, 0x126
je 0x1800a9fa4
cmp eax, 0x303c
je 0x1800a9f9f
cmp eax, 0x5f52
je case.0x1800a8fbe.38
jmp 0x1800a9fa7
mov dword [rbp - 0x59], edi
jmp 0x1800a9fa7
mov qword [r15], r14
add eax, 0x2f16
cmp eax, 0x8d42
jbe 0x1800a9f84
sub ecx, 0xffffff80
jmp 0x1800a9ef4
cmp ecx, 0x264
je 0x1800a9fd7
cmp ecx, 0x2e4
je case.0x1800a8fbe.38
sub ecx, 0xffffff80
jmp 0x1800a9ef4
lea rax, [r14 + 2]
mov dword [rbp - 0x59], 4
mov qword [r15], rax
sub ecx, 0xffffff80
jmp 0x1800a9ef4
mov eax, 0x118
cmp eax, 0x118
je 0x1800aa012
cmp eax, 0xa2f8
je 0x1800aa00d
cmp eax, 0x144d8
je case.0x1800a8fbe.38
jmp 0x1800aa015
mov dword [rbp - 0x59], edi
jmp 0x1800aa015
mov qword [r15], r14
add eax, 0xa1e0
cmp eax, 0x1e5a0
jbe 0x1800a9ff2
mov esi, 0x27
jmp case.0x1800a8fbe.39
mov dword [rbp - 0x59], 0xffffffff
mov eax, dword [rbp + 0x77]
dec esi
jmp 0x1800a8f7c
mov qword [rsp + 0x28], r12
mov r9d, 0xf1
xor r8d, r8d
mov qword [rsp + 0x20], 0
xor edx, edx
xor ecx, ecx
call fcn.18009f0f0
lea r8, [rbp - 0x31]
mov byte [rbp + 0x77], al
mov edx, 0x9f
lea rcx, [rbp + 0x77]
call fcn.1800578b0
mov byte [rbp - 0x59], al
jmp case.0x1800a8fbe.38
lea rax, [r14 + 2]
mov qword [rsp + 0x28], rdi
mov r9, r12
mov qword [rsp + 0x20], rax
mov r8d, 0x68
mov rdx, r15
mov rcx, r13
call fcn.1800bac60
mov dword [rbp - 0x59], eax
jmp case.0x1800a8fbe.38
lea r9, [r14 + 2]
mov qword [rsp + 0x20], r12
mov r8d, 0xa4
mov rdx, r15
mov rcx, r13
call fcn.180098470
mov dword [rbp - 0x59], eax
jmp case.0x1800a8fbe.38
add r14, 4
jmp 0x1800aa14f
movzx eax, byte [r14 + 1]
movzx r8d, byte [r14]
movzx ecx, byte [rax + rbx + 0xf1450]
mov eax, r8d
shr eax, 5
and r8d, 0x1f
lea eax, [rax + rcx*8]
mov eax, dword [rbx + rax*4 + 0xf0f50]
bt eax, r8d
jb case.0x1800a9cf5.11
mov eax, 0x65
cmp eax, 0x65
je 0x1800aa114
cmp eax, 0x19a5
je 0x1800a9364
jmp 0x1800aa117
mov qword [r15], r14
add eax, 0x1940
cmp eax, 0x3280
jbe 0x1800aa102
add r14, 2
jmp 0x1800aa14f
mov ecx, 0xa4
nop
mov eax, ecx
sub eax, 0xa3
je 0x1800a9364
cmp eax, 1
jne 0x1800aa145
mov qword [r15], r14
dec ecx
cmp ecx, 0xa2
ja 0x1800aa130
mov r9, r14
mov qword [rsp + 0x20], r15
mov r8, r13
mov edx, 0x83
mov rcx, r12
call fcn.1800d3160
mov dword [rbp - 0x59], eax
jmp case.0x1800a8fbe.38
mov edi, dword [rbp - 0x4d]
nop
mov ebx, 0x10e
cmp ebx, 0x10e
jne 0x1800aa1a2
mov dword [rsp + 0x28], 0xba
mov r9, r12
xor r8d, r8d
mov qword [rsp + 0x20], 0
xor edx, edx
xor ecx, ecx
call fcn.1800acd10
cmp al, dil
jae 0x1800aa1b0
add ebx, 0xd
cmp ebx, 0x11b
jb 0x1800aa175
jmp 0x1800aa170
movzx ecx, byte [r14]
xor edx, edx
movzx eax, al
div ecx
mov byte [rbp - 0x59], dl
mov rax, qword [rbp - 0x59]
lea r11, [rsp + 0xc0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret