Function at 0x1400152fc
Capabilities:
Parse credit card information

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov eax, 0x1870
call fcn.140059cb0
sub rsp, rax
mov rax, qword [0x1400878f0]
xor rax, rsp
mov qword [rsp + 0x1860], rax
mov rbx, rcx
mov qword [rsp + 0x50], rcx
movzx ecx, word [rdx]
mov r14, rdx
call fcn.14004d5f4
mov ecx, eax
cmp eax, 0x4e
jg 0x140015e63
je 0x14001666d
cmp eax, 0x46
jg 0x1400156ee
je 0x1400156d2
sub ecx, 0x3f
je 0x1400156c3
sub ecx, 1
je 0x1400156a2
sub ecx, 1
je 0x14001554a
mov ebp, 2
sub ecx, ebp
je 0x1400154e6
sub ecx, 1
je 0x140015452
cmp ecx, 1
jne 0x140016633
lea rdi, [r14 + 2]
movzx ecx, word [rdi]
call fcn.14004d5f4
cmp eax, 0x50
je 0x1400153e5
lea r12d, [rbp + 0x29]
mov rcx, rbx
cmp word [rdi], r12w
jne 0x1400153d2
lea r8, [rbx + 9]
lea rdx, [r14 + 4]
call fcn.140014310
or dword [rbx + 4], eax
lea edi, [rbp - 1]
mov byte [rbx + 0xa], dil
jmp 0x140016930
lea r8, [rbx + 8]
mov rdx, rdi
call fcn.140014310
or dword [rbx], eax
jmp 0x140016930
movzx ecx, word [r14 + 4]
test ecx, ecx
je 0x140015442
sub ecx, 0x31
je 0x140015437
sub ecx, 1
je 0x140015425
sub ecx, 1
je 0x140015416
cmp ecx, 1
jne 0x140016930
lea rdx, [r14 + 6]
lea rcx, [rbx + 0x5030]
jmp 0x140015b65
mov dword [rbx + 0x716c], 4
jmp 0x140016930
mov r15d, 3
mov dword [rbx + 0x716c], r15d
jmp 0x140016930
mov dword [rbx + 0x716c], ebp
jmp 0x140016930
mov edi, 1
mov dword [rbx + 0x716c], edi
jmp 0x140016930
xor esi, esi
cmp word [r14 + 4], si
jne 0x140016930
movzx ecx, word [r14 + 2]
call fcn.14004d5f4
sub eax, 0x46
je 0x1400154d5
sub eax, ebp
je 0x1400154c4
sub eax, 0xa
je 0x1400154ac
sub eax, 1
je 0x14001549b
cmp eax, 4
jne 0x140016930
lea edi, [rsi + 1]
mov byte [rbx + 0x71c6], dil
mov byte [rbx + 0x71ca], dil
jmp 0x140016930
mov edi, 1
mov byte [rbx + 0x71ae], dil
jmp 0x140016930
mov edi, 1
mov byte [rbx + 0x71c6], dil
mov byte [rbx + 0x71cb], dil
jmp 0x140016930
mov edi, 1
mov byte [rbx + 0x71c5], dil
jmp 0x140016930
mov edi, 1
mov byte [rbx + 0x71c6], dil
jmp 0x140016930
xor esi, esi
mov edi, 1
cmp word [r14 + 4], si
jne 0x140015526
movzx ecx, word [r14 + 2]
call fcn.14004d5f4
lea ecx, [rdi + 0x2c]
cmp eax, ecx
je 0x14001551f
cmp eax, 0x4c
je 0x140015517
cmp eax, 0x55
jne 0x140015526
mov dword [rbx + 0x71b4], edi
jmp 0x140015526
mov dword [rbx + 0x71b4], ebp
jmp 0x140015526
mov byte [rbx + 0x7166], dil
lea rcx, [r14 + 2]
lea rdx, [0x140071394]
call fcn.14004d600
test eax, eax
jne 0x140016930
mov byte [rbx + 0x743a], dil
jmp 0x140016930
movzx ecx, word [r14 + 2]
call fcn.14004d5f4
sub eax, 0x43
je 0x140015691
sub eax, 1
je 0x140015642
mov r15d, 3
sub eax, r15d
je 0x1400155df
sub eax, 2
je 0x1400155ce
sub eax, 5
je 0x140016930
sub eax, 1
je 0x1400155bd
sub eax, 1
je 0x1400155ad
sub eax, r15d
je 0x14001559c
cmp eax, r15d
je 0x140016930
jmp 0x140016633
mov edi, 1
mov byte [rbx + 0x73e2], dil
jmp 0x140016930
lea rdx, [r14 + 4]
lea rcx, [rbx + 0x4030]
jmp 0x140015b65
mov edi, 1
mov byte [rbx + 0x7165], dil
jmp 0x140016930
mov edi, 1
mov byte [rbx + 0x73e6], dil
jmp 0x140016930
lea r15, [r14 + 4]
mov ecx, 0x2d
cmp word [r15], cx
jne 0x140015603
xor esi, esi
cmp word [r14 + 6], si
jne 0x140015603
mov byte [rbx + 0x71e1], sil
jmp 0x140016930
movzx ecx, word [r15]
call fcn.14004d5f4
mov r8d, 0x80
cmp eax, 0x46
jne 0x140015627
lea rcx, [rbx + 0x72e2]
lea rdx, [r14 + 6]
jmp 0x140015b6b
mov edi, 1
lea rcx, [rbx + 0x71e2]
mov byte [rbx + 0x71e1], dil
mov rdx, r15
jmp 0x140015b6b
xor esi, esi
cmp word [r14 + 4], si
jne 0x140015659
lea edi, [rsi + 1]
mov dword [rbx + 0x8500], edi
jmp 0x140016930
mov eax, 0x31
cmp word [r14 + 4], ax
jne 0x140015673
lea ebp, [rax - 0x2f]
mov dword [rbx + 0x8500], ebp
jmp 0x140016930
cmp word [r14 + 4], 0x32
jne 0x140016930
mov r15d, 3
mov dword [rbx + 0x8500], r15d
jmp 0x140016930
mov edi, 1
mov byte [rbx + 0x7164], dil
jmp 0x140016930
xor esi, esi
lea r12d, [rsi + 0x2b]
cmp word [r14 + 2], r12w
lea edi, [r12 - 0x2a]
sete sil
add esi, edi
mov dword [rbx + 0x9524], esi
jmp 0x140016930
xor edx, edx
mov rcx, rbx
call fcn.140014614
jmp 0x140016930
xor esi, esi
cmp word [r14 + 2], si
jne 0x140016633
lea edi, [rsi + 1]
mov byte [rbx + 0x7167], dil
jmp 0x140016930
sub ecx, 0x48
je 0x140015d8a
sub ecx, 1
je 0x140015b2a
mov ebp, 2
sub ecx, ebp
je 0x140015af3
sub ecx, 1
je 0x140015abb
cmp ecx, 1
jne 0x140016633
movzx ecx, word [r14 + 2]
call fcn.14004d5f4
sub eax, 0x41
je 0x140015a99
sub eax, ebp
je 0x140015927
sub eax, 1
je 0x140015884
sub eax, 1
je 0x140015855
sub eax, 8
je 0x140016930
sub eax, 6
je 0x140015791
cmp eax, 1
je 0x140015772
movzx eax, word [r14 + 2]
sub eax, 0x30
mov dword [rbx + 0x7144], eax
cmp eax, 5
jmp 0x140015786
lea rcx, [r14 + 4]
call fcn.14004d5d0
mov dword [rbx + 0x9518], eax
dec eax
cmp eax, 0x3f
jbe 0x140016930
jmp 0x140016633
lea rdx, [r14 + 4]
xor esi, esi
cmp word [rdx], si
lea rax, str.7z_ace_arj_bz2_cab_gz_jpeg_jpg_lha_lz_lzh_mp3_rar_taz_tgz_xz_z_zip_zipx
mov r8d, 0x400
lea rcx, [rsp + 0x60]
cmove rdx, rax
call fcn.14004a390
lea rdi, [rsp + 0x60]
cmp word [rsp + 0x60], si
je 0x140016930
lea r14, [rbx + 0xb850]
mov r12d, 0x800
mov edx, 0x3b
mov rcx, rdi
call fcn.14005c330
mov rbx, rax
test rax, rax
je 0x1400157ea
mov word [rax], si
cmp word [rdi], 0x2e
jne 0x1400157f3
add rdi, rbp
lea rdx, [0x1400713f8]
mov rcx, rdi
call fcn.14006197c
lea rcx, [rsp + 0x860]
test rax, rax
jne 0x140015823
mov r9, rdi
lea r8, str.._ls
mov rdx, r12
call fcn.14000657c
jmp 0x14001582e
mov r8, r12
mov rdx, rdi
call fcn.14004a390
lea rdx, [rsp + 0x860]
mov rcx, r14
call fcn.14004a3f0
test rbx, rbx
je 0x140016930
lea rdi, [rbx + 2]
cmp word [rdi], si
jne 0x1400157d2
jmp 0x140016930
movzx ecx, word [r14 + 4]
call fcn.14004d5f4
cmp eax, 0x53
jne 0x140016930
xor esi, esi
cmp word [r14 + 6], si
jne 0x140016930
lea edi, [rax - 0x52]
mov byte [rbx + 0x6133], dil
jmp 0x140016930
lea rcx, [r14 + 4]
call fcn.14004d5d0
xor esi, esi
movsxd rcx, eax
mov qword [rbx + 0x10], rcx
test eax, eax
jne 0x1400158b1
movzx ecx, word [r14 + 4]
call fcn.14004d5f4
mov edx, 0x10000
lea ecx, [rax - 0x41]
shl rdx, cl
jmp 0x1400158e8
or rdi, 0xffffffffffffffff
inc rdi
cmp word [r14 + rdi*2], si
jne 0x1400158b5
movzx ecx, word [r14 + rdi*2 - 2]
call fcn.14004d5f4
mov rdx, qword [rbx + 0x10]
cmp eax, 0x47
je 0x1400158e4
cmp eax, 0x4b
je 0x1400158de
shl rdx, 0x14
jmp 0x1400158e8
shl rdx, 0xa
jmp 0x1400158e8
shl rdx, 0x1e
mov qword [rbx + 0x10], rdx
cmp rdx, 0x40000000
ja 0x140015905
mov rcx, rbx
call fcn.140014138
test al, al
jne 0x140016930
mov ecx, 0xe4c
call fcn.140044598
mov rcx, rax
mov rdx, r14
call fcn.1400183f0
mov qword [rbx + 0x10], 0x400000
jmp 0x140016930
add r14, 4
mov ecx, 0x2d
movzx eax, word [r14]
cmp ax, cx
jne 0x14001595b
add rbx, 0x743c
lea eax, [rcx - 0x1d]
lea edi, [rcx - 0x2c]
lea r15d, [rcx - 0x2a]
mov dword [rbx], r15d
lea rbx, [rbx + 0xc]
sub rax, rdi
jne 0x14001594a
jmp 0x140016930
xor esi, esi
test ax, ax
je 0x140016930
lea edi, [rsi + 1]
lea r12d, [rsi + 0x2b]
lea r15d, [rsi + 3]
lea r13d, [rsi + 8]
movzx ecx, ax
mov dword [rsp + 0x44], esi
mov dword [rsp + 0x48], esi
call fcn.140049f44
test al, al
je 0x1400159a7
mov rcx, r14
call fcn.14004d5d0
mov dword [rsp + 0x44], eax
jmp 0x14001599a
add r14, rbp
movzx ecx, word [r14]
call fcn.140049f44
test al, al
jne 0x140015997
mov eax, 0x3a
cmp word [r14], ax
jne 0x1400159ea
lea rax, [r14 + 2]
movzx ecx, word [rax]
mov qword [rsp + 0x58], rax
call fcn.140049f44
test al, al
je 0x1400159ea
mov r14, qword [rsp + 0x58]
mov rcx, r14
call fcn.14004d5d0
mov dword [rsp + 0x48], eax
jmp 0x1400159dd
add r14, rbp
movzx ecx, word [r14]
call fcn.140049f44
test al, al
jne 0x1400159da
movzx ecx, word [r14]
add r14, rbp
call fcn.14004d5f4
sub eax, 0x41
je 0x140015a2d
sub eax, ebp
je 0x140015a26
sub eax, edi
je 0x140015a21
sub eax, edi
je 0x140015a1c
sub eax, 0xd
je 0x140015a17
cmp eax, ebp
jne 0x140015a34
mov edx, 7
jmp 0x140015a37
mov rdx, r15
jmp 0x140015a37
mov rdx, rdi
jmp 0x140015a37
mov rdx, rsi
jmp 0x140015a37
mov edx, 5
jmp 0x140015a37
mov edx, 4
jmp 0x140015a37
mov rdx, r13
movzx ecx, word [r14]
mov r8d, 0xfffd
movzx eax, cx
sub ax, r12w
test r8w, ax
jne 0x140015a60
add r14, rbp
cmp cx, r12w
jne 0x140015a5b
mov eax, ebp
jmp 0x140015a62
mov eax, r15d
jmp 0x140015a62
mov eax, edi
lea rcx, [rdx + rdx*2]
mov dword [rbx + rcx*4 + 0x743c], eax
lea rax, [rdx + rdx*2]
mov edx, dword [rsp + 0x44]
mov dword [rbx + rax*4 + 0x7440], edx
mov eax, dword [rsp + 0x48]
mov dword [rbx + rcx*4 + 0x7444], eax
movzx eax, word [r14]
test ax, ax
jne 0x140015975
jmp 0x140016930
xor esi, esi
cmp word [r14 + 4], si
je 0x140015aaa
cmp word [r14 + 4], 0x35
jne 0x140015aaf
mov esi, 1
mov byte [rbx + 0x71c8], sil
jmp 0x140016930
lea rcx, [r14 + 2]
mov r8, rbp
lea rdx, [0x1400713f0]
call fcn.14004d648
test eax, eax
jne 0x140016930
lea rdx, [r14 + 6]
lea rcx, [0x140097a90]
call fcn.1400282b4
test al, al
jne 0x140016930
jmp 0x140016633
movzx ecx, word [r14 + 2]
call fcn.14004d5f4
test eax, eax
je 0x140015b19
cmp eax, 0x42
jne 0x140016930
lea edi, [rax - 0x41]
mov byte [rbx + 0x71c4], dil
jmp 0x140016930
mov edi, 1
mov byte [rbx + 0x7438], dil
jmp 0x140016930
lea rdi, [r14 + 2]
mov r15d, 3
mov r8d, r15d
lea rdx, [0x1400713a0]
mov rcx, rdi
call fcn.14004d648
xor esi, esi
test eax, eax
jne 0x140015b75
lea rdx, [0x1400713a8]
lea rcx, [rbx + 0x6136]
lea rax, [r14 + 8]
cmp word [rax], si
cmovne rdx, rax
mov r8d, 0x800
call fcn.14004a390
jmp 0x140016930
mov r8, r15
lea rdx, [0x1400713b8]
mov rcx, rdi
call fcn.14004d648
test eax, eax
jne 0x140015ba7
lea ecx, [rax + 0x2d]
cmp word [r14 + 8], cx
lea edi, [rax + 1]
sete sil
add esi, edi
mov dword [rbx + 0x713c], esi
jmp 0x140016930
lea rdx, [0x1400713c0]
mov rcx, rdi
call fcn.14004d600
test eax, eax
jne 0x140015bcf
lea edi, [rax + 1]
mov dword [rbx + 0x7138], edi
mov ecx, edi
call fcn.140017d10
jmp 0x140016930
mov r8, r15
lea rdx, [0x1400713c8]
mov rcx, rdi
call fcn.14004d648
test eax, eax
jne 0x140015bf8
lea rdx, [0x14007134c]
lea rcx, [rbx + 0x74fc]
jmp 0x140015b5a
lea rdx, [0x140071374]
mov rcx, rdi
call fcn.14004d600
test eax, eax
jne 0x140015c1a
lea edi, [rax + 1]
mov byte [rbx + 0x71ad], dil
jmp 0x140016930
lea rdx, [0x1400713d0]
mov rcx, rdi
call fcn.14004d600
test eax, eax
jne 0x140015c39
mov dword [rbx + 0x7138], r15d
mov ecx, r15d
jmp 0x140015bc5
movzx ecx, word [rdi]
call fcn.14004d5f4
cmp eax, 0x44
jne 0x140015cd0
lea ebp, [rax - 0x42]
movzx eax, word [r14 + 4]
mov r15d, ebp
test ax, ax
je 0x140016930
lea edi, [rbp - 1]
movzx ecx, ax
call fcn.14004d5f4
sub eax, 0x43
je 0x140015cb7
sub eax, edi
je 0x140015cae
sub eax, 0xa
je 0x140015ca5
sub eax, ebp
je 0x140015c9c
sub eax, edi
je 0x140015c8d
cmp eax, 5
jne 0x140015cbe
mov byte [rbx + 0x71ad], dil
jmp 0x140015cbe
mov ecx, ebp
mov dword [rbx + 0x7138], ebp
call fcn.140017d10
jmp 0x140015cbe
mov byte [rbx + 0x7154], dil
jmp 0x140015cbe
mov byte [rbx + 0x7157], dil
jmp 0x140015cbe
mov byte [rbx + 0x7156], dil
jmp 0x140015cbe
mov byte [rbx + 0x7155], dil
add r15d, edi
movzx eax, word [r14 + r15*2]
test ax, ax
jne 0x140015c61
jmp 0x140016930
mov r8, r15
lea rdx, [0x1400713d8]
mov rcx, rdi
call fcn.14004d648
test eax, eax
jne 0x140015d42
movzx ecx, word [r14 + 8]
test ecx, ecx
je 0x140015d32
sub ecx, 0x31
je 0x140015d32
sub ecx, 1
je 0x140015d22
sub ecx, 1
je 0x140015d16
cmp ecx, 1
jne 0x140016930
mov dword [rbx + 0x8504], 4
jmp 0x140016930
mov dword [rbx + 0x8504], r15d
jmp 0x140016930
mov ebp, 2
mov dword [rbx + 0x8504], ebp
jmp 0x140016930
mov edi, 1
mov dword [rbx + 0x8504], edi
jmp 0x140016930
lea rdx, [0x1400713e0]
mov rcx, rdi
call fcn.14004d600
test eax, eax
jne 0x140015d64
lea edi, [rax + 1]
mov byte [rbx + 0x7158], dil
jmp 0x140016930
lea rdx, [0x1400713e8]
mov rcx, rdi
call fcn.14004d600
test eax, eax
jne 0x140016930
lea edi, [rax + 1]
mov byte [rbx + 0x71e0], dil
jmp 0x140016930
movzx ecx, word [r14 + 2]
call fcn.14004d5f4
cmp eax, 0x50
je 0x140015dda
cmp eax, 0x54
jne 0x140016633
movzx ecx, word [r14 + 4]
call fcn.14004d5f4
sub eax, 0x42
je 0x140015dc8
cmp eax, 1
jne 0x140016633
lea ebp, [rax + 1]
mov dword [rbx + 0x7148], ebp
jmp 0x140016930
mov r15d, 3
mov dword [rbx + 0x7148], r15d
jmp 0x140016930
mov edi, 1
xor esi, esi
mov byte [rbx + 0x6132], dil
cmp word [r14 + 4], si
je 0x140015e35
or rdi, 0xffffffffffffffff
mov rax, rdi
inc rax
cmp word [r14 + rax*2 + 4], si
jne 0x140015df6
cmp rax, 0x80
jb 0x140015e16
mov edx, 0x7f
lea ecx, [rdx - 0x1c]
call fcn.1400010c0
lea rcx, [rbx + 0x6030]
lea rdx, [r14 + 4]
call fcn.140047b24
inc rdi
cmp word [r14 + rdi*2], si
jne 0x140015e26
jmp 0x1400163f9
cmp byte [rbx + 0x6130], sil
jne 0x140016930
lea r8, [rbx + 0x6030]
xor edx, edx
xor ecx, ecx
call fcn.14004ce48
lea rcx, [0x140071334]
call fcn.140018208
jmp 0x140016930
cmp ecx, 0x55
jg 0x140016612
je 0x1400165fa
sub ecx, 0x4f
je 0x14001640a
sub ecx, 1
je 0x140016393
sub ecx, 1
je 0x140016331
sub ecx, 1
je 0x140016218
sub ecx, 1
je 0x140015f80
cmp ecx, 1
jne 0x140016633
movzx ecx, word [r14 + 2]
call fcn.14004d5f4
mov edx, eax
cmp eax, 0x4b
jg 0x140015f16
je 0x140015f06
xor esi, esi
test eax, eax
je 0x140015ef5
sub edx, 0x2d
je 0x140015ee9
sub edx, 0x14
je 0x140015ee1
sub edx, 1
je 0x140015ed8
cmp edx, 1
jmp 0x140015591
xor r9d, r9d
lea r8d, [r9 + 1]
jmp 0x140015f54
xor r9d, r9d
xor r8d, r8d
jmp 0x140015f54
mov byte [rbx + 0x7439], sil
jmp 0x140016930
mov edi, 1
mov byte [rbx + 0x7439], dil
jmp 0x140016930
mov edi, 1
mov dword [rbx + 0x71b0], edi
jmp 0x140016930
sub edx, 0x4c
je 0x140015f70
sub edx, 2
je 0x140015f65
sub edx, 1
je 0x140015f49
sub edx, 4
je 0x140015f38
mov r15d, 3
cmp edx, r15d
jmp 0x140015591
lea rdx, [r14 + 4]
mov rcx, rbx
call fcn.140016c84
jmp 0x140016930
mov edi, 1
mov r9b, dil
mov r8b, dil
lea rdx, [r14 + 4]
mov rcx, rbx
call fcn.140016d7c
jmp 0x140016930
mov r9d, 1
jmp 0x140015ee4
mov ebp, 2
mov dword [rbx + 0x71b0], ebp
jmp 0x140016930
mov r15d, 3
lea rdx, [0x1400714a0]
mov r8d, r15d
mov rcx, r14
call fcn.14004d648
xor esi, esi
lea edi, [r15 - 2]
mov r12d, 0x800
test eax, eax
jne 0x140016001
lea rax, [r14 + 6]
cmp word [rax], si
lea rbp, [0x1400714a8]
cmovne rbp, rax
mov rcx, rbp
call fcn.14003511c
cmp rax, rbp
jne 0x140015fef
mov rcx, rbp
call fcn.14002345c
test al, al
jne 0x140015fef
lea rdx, [rbx + 0x1018]
mov byte [rsp + 0x20], sil
mov r9b, dil
mov r8d, r12d
mov rcx, rbp
call fcn.1400342a0
jmp 0x140016001
lea rcx, [rbx + 0x1018]
mov r8, r12
mov rdx, rbp
call fcn.14004a390
lea r13, [r14 + 2]
movzx ecx, word [r13]
call fcn.140049f44
test al, al
je 0x140016031
mov ebp, 2
mov rcx, r13
or dword [rbx + 0x715c], ebp
call fcn.14004d5d0
mov dword [rbx + 0x7160], eax
jmp 0x140016930
movzx ecx, word [r13]
call fcn.14004d5f4
test eax, eax
je 0x14001620d
mov ecx, 0x2d
sub eax, ecx
je 0x140016202
sub eax, 0x16
je 0x14001612d
sub eax, edi
je 0x14001611b
sub eax, edi
je 0x14001610f
sub eax, 4
je 0x1400160e9
sub eax, r15d
je 0x1400160c2
sub eax, edi
je 0x14001609b
cmp eax, 9
jne 0x140016930
cmp word [r14 + 4], cx
lea eax, [rcx - 0x1d]
lea r13d, [rcx - 0x25]
cmove eax, r13d
or dword [rbx + 0x715c], eax
jmp 0x140016930
movzx ecx, word [r14 + 4]
call fcn.140049f44
test al, al
je 0x140016930
lea rcx, [r14 + 4]
call fcn.14004d580
mov qword [rbx + 0x7430], rax
jmp 0x140016930
movzx ecx, word [r14 + 4]
call fcn.140049f44
test al, al
je 0x140016930
lea rcx, [r14 + 4]
call fcn.14004d580
mov qword [rbx + 0x7428], rax
jmp 0x140016930
call fcn.140017d08
lea rax, [r14 + 4]
mov r8, r12
cmp word [rax], si
lea rdx, [0x1400714c0]
lea rcx, [rbx + 0x8516]
cmovne rdx, rax
jmp 0x140015b6b
or dword [rbx + 0x715c], 4
jmp 0x140016930
mov r13d, 8
or dword [rbx + 0x715c], r13d
jmp 0x140016930
movzx ecx, word [r14 + 4]
mov r12b, sil
call fcn.14004d5f4
cmp eax, 0x41
je 0x140016171
cmp eax, 0x46
je 0x14001616a
cmp eax, 0x4f
je 0x140016163
cmp eax, 0x55
je 0x14001615e
mov rdx, r14
mov rcx, rbx
call fcn.140013f64
jmp 0x1400161f2
mov ebp, r15d
jmp 0x140016173
mov ebp, 2
jmp 0x140016173
mov ebp, 4
jmp 0x140016173
mov ebp, edi
cmp word [r14 + 6], si
jne 0x140016194
mov dword [rbx + 0x402c], ebp
mov dword [rbx + 0x4028], ebp
mov dword [rbx + 0x4024], ebp
mov dword [rbx + 0x4020], ebp
jmp 0x1400161f2
test r12b, r12b
jne 0x1400161f2
mov eax, r15d
movzx ecx, word [r14 + rax*2]
call fcn.14004d5f4
cmp eax, 0x43
je 0x1400161e2
cmp eax, 0x47
je 0x1400161da
cmp eax, 0x4c
je 0x1400161d2
cmp eax, 0x52
je 0x1400161ca
mov rdx, r14
mov rcx, rbx
call fcn.140013f64
mov r12b, dil
jmp 0x1400161e8
mov dword [rbx + 0x402c], ebp
jmp 0x1400161e8
mov dword [rbx + 0x4024], ebp
jmp 0x1400161e8
mov dword [rbx + 0x4028], ebp
jmp 0x1400161e8
mov dword [rbx + 0x4020], ebp
add r15d, edi
cmp word [r14 + r15*2], si
jne 0x140016194
mov ecx, dword [rbx + 0x402c]
call fcn.140017d18
jmp 0x140016930
mov dword [rbx + 0x715c], esi
jmp 0x140016930
or dword [rbx + 0x715c], edi
jmp 0x140016930
movzx ecx, word [r14 + 2]
call fcn.14004d5f4
test eax, eax
je 0x140016321
mov ecx, 0x2d
cmp eax, ecx
je 0x140016311
cmp eax, 0x30
je 0x1400162ff
cmp eax, 0x49
je 0x140016291
cmp eax, 0x52
je 0x140016271
cmp eax, 0x56
jne 0x140016930
lea r9d, [rcx - 0x37]
mov rdx, r14
mov rcx, rbx
lea r8, [r14 + 4]
call fcn.1400143a8
mov dword [rbx + 0x7150], eax
jmp 0x140016930
lea r8, [r14 + 4]
mov r9d, 0xfffffffd
mov rdx, r14
mov rcx, rbx
call fcn.1400143a8
mov dword [rbx + 0x714c], eax
jmp 0x140016930
lea rcx, [r14 + 4]
call fcn.14004d5d0
mov dword [rbx + 0x71bc], eax
cmp eax, 0xf
jbe 0x1400162b0
mov rdx, r14
mov rcx, rbx
call fcn.140013f64
mov edx, 0x3a
lea rcx, [r14 + 4]
call fcn.14005c330
test rax, rax
je 0x1400162ef
lea rcx, [rax + 2]
call fcn.14004d5d0
mov dword [rbx + 0x71c0], eax
cmp eax, 0x3e8
jle 0x1400162e4
mov rdx, r14
mov rcx, rbx
call fcn.140013f64
mov ecx, dword [rbx + 0x71c0]
call fcn.14004ac94
mov ecx, dword [rbx + 0x71bc]
call fcn.14004ae2c
jmp 0x140016930
mov r15d, 3
mov dword [rbx + 0x7170], r15d
jmp 0x140016930
mov edi, 1
mov dword [rbx + 0x7170], edi
jmp 0x140016930
mov ebp, 2
mov dword [rbx + 0x7170], ebp
jmp 0x140016930
movzx ecx, word [r14 + 2]
call fcn.14004d5f4
cmp eax, 0x4f
jne 0x140016633
movzx ecx, word [r14 + 4]
call fcn.14004d5f4
xor esi, esi
test eax, eax
je 0x140016383
lea r12d, [rsi + 0x2b]
cmp eax, r12d
je 0x140016373
lea ecx, [rsi + 0x2d]
cmp eax, ecx
jne 0x140016633
mov dword [rbx + 0x2018], esi
jmp 0x140016930
mov ebp, 2
mov dword [rbx + 0x2018], ebp
jmp 0x140016930
mov edi, 1
mov dword [rbx + 0x2018], edi
jmp 0x140016930
xor esi, esi
cmp word [r14 + 2], si
jne 0x1400163b8
lea r8, [rbx + 0x6030]
xor edx, edx
xor ecx, ecx
call fcn.14004ce48
lea rcx, [0x14007139c]
jmp 0x140015e59
or rdi, 0xffffffffffffffff
mov rax, rdi
inc rax
cmp word [r14 + rax*2 + 2], si
jne 0x1400163bf
cmp rax, 0x80
jb 0x1400163df
mov edx, 0x7f
lea ecx, [rdx - 0x1c]
call fcn.1400010c0
lea rcx, [rbx + 0x6030]
lea rdx, [r14 + 2]
call fcn.140047b24
inc rdi
cmp word [r14 + rdi*2], si
jne 0x1400163ef
lea rdx, [rdi + rdi]
mov rcx, r14
call fcn.140047b7c
jmp 0x140016930
movzx ecx, word [r14 + 2]
call fcn.14004d5f4
mov edx, eax
cmp eax, 0x4c
jg 0x140016561
je 0x140016536
xor esi, esi
test eax, eax
je 0x140016527
sub edx, 0x2b
je 0x140016517
lea ebp, [rsi + 2]
sub edx, ebp
je 0x14001650c
sub edx, 0x16
je 0x1400164fb
sub edx, 5
je 0x1400164ea
cmp edx, 1
jne 0x140016633
movzx edx, word [r14 + 4]
sub edx, 0x2d
je 0x1400164b8
lea r15d, [rsi + 3]
sub edx, r15d
je 0x1400164b8
sub edx, 1
je 0x1400164ab
sub edx, 1
je 0x1400164a3
sub edx, 1
je 0x14001649a
cmp edx, 1
jne 0x1400164ab
mov edi, edx
mov dword [rbx + 0x71d0], 4
mov byte [rbx + 0x9528], dil
jmp 0x1400164be
mov dword [rbx + 0x71d0], r15d
jmp 0x1400164be
mov dword [rbx + 0x71d0], ebp
jmp 0x1400164be
mov edi, 1
mov dword [rbx + 0x71d0], edi
jmp 0x1400164be
mov dword [rbx + 0x71d0], esi
mov edx, 0x3a
lea rcx, [r14 + 4]
call fcn.14005c330
test rax, rax
je 0x140016930
lea rcx, [rax + 2]
call fcn.14004d580
mov qword [rbx + 0x71d8], rax
jmp 0x140016930
mov edi, 1
mov byte [rbx + 0x71ba], dil
jmp 0x140016930
mov edi, 1
mov byte [rbx + 0x73e5], dil
jmp 0x140016930
mov dword [rbx + 0x7140], ebp
jmp 0x140016930
mov edi, 1
mov dword [rbx + 0x7140], edi
jmp 0x140016930
mov dword [rbx + 0x7140], 4
jmp 0x140016930
mov edi, 1
mov byte [rbx + 0x71b9], dil
movzx ecx, word [r14 + 4]
call fcn.14004d5f4
cmp eax, 0x41
jne 0x140016930
mov byte [rbx + 0x71bb], dil
jmp 0x140016930
sub edx, 0x4e
je 0x1400165d8
mov ebp, 2
sub edx, ebp
je 0x1400165b3
sub edx, ebp
je 0x1400165a1
sub edx, 1
je 0x140016590
cmp edx, 4
jne 0x140016633
lea edi, [rbp - 1]
mov byte [rbx + 0x71b8], dil
jmp 0x140016930
mov edi, 1
mov byte [rbx + 0x73e4], dil
jmp 0x140016930
mov r15d, 3
mov dword [rbx + 0x7140], r15d
jmp 0x140016930
mov r12d, 0x800
lea rdx, [r14 + 4]
mov r8d, r12d
lea rcx, [rbx + 0x201e]
call fcn.14004a390
lea rcx, [rbx + 0x201e]
jmp 0x140016707
movzx ecx, word [r14 + 4]
call fcn.14004d5f4
cmp eax, 0x49
jne 0x140016930
lea edi, [rax - 0x48]
mov byte [rbx + 0x71c7], dil
jmp 0x140016930
xor esi, esi
cmp word [r14 + 2], si
jne 0x140016633
lea edi, [rsi + 1]
mov byte [rbx + 0x7168], dil
jmp 0x140016930
sub ecx, 0x56
je 0x140016714
sub ecx, 1
je 0x1400166ed
sub ecx, 1
je 0x14001666d
sub ecx, 1
je 0x14001665c
cmp ecx, 1
je 0x140016643
mov rdx, r14
mov rcx, rbx
call fcn.140013f64
jmp 0x140016930
lea rax, [r14 + 2]
xor esi, esi
lea rcx, [rbx + 0x301e]
lea rdx, [0x1400714d0]
jmp 0x140015b5e
mov edi, 1
mov byte [rbx + 0x71ac], dil
jmp 0x140016930
lea rdi, [r14 + 2]
xor esi, esi
cmp word [rdi], si
je 0x140016930
movzx ecx, word [r14]
call fcn.14004d5f4
cmp eax, 0x4e
mov ebp, 0xb610
mov ecx, 0xb6d0
cmove ebp, ecx
add rbp, rbx
cmp word [rdi], 0x40
jne 0x1400166dd
mov rcx, r14
call fcn.14003498c
test al, al
jne 0x1400166dd
mov eax, dword [rbx + 0x4024]
lea edi, [rsi + 1]
mov byte [rsp + 0x38], dil
lea rcx, [r14 + 4]
mov byte [rsp + 0x30], dil
mov r9b, dil
mov byte [rsp + 0x28], dil
xor r8d, r8d
mov rdx, rbp
mov dword [rsp + 0x20], eax
call fcn.140024400
jmp 0x140016930
mov rdx, rdi
mov rcx, rbp
call fcn.14004a3f0
jmp 0x140016930
mov r12d, 0x800
lea rdx, [r14 + 2]
mov r8d, r12d
lea rcx, [rbx + 0x18]
call fcn.14004a390
lea rcx, [rbx + 0x18]
mov rdx, r12
call fcn.140033538
jmp 0x140016930
movzx ecx, word [r14 + 2]
call fcn.14004d5f4
sub eax, 0x2d
je 0x140016927
sub eax, 0x17
je 0x140016919
sub eax, 1
je 0x1400168f7
mov edi, 1
sub eax, 9
je 0x1400168ee
lea ebp, [rdi + 1]
cmp eax, ebp
je 0x1400168e5
xor esi, esi
cmp byte [rbx + 0x9529], sil
jne 0x140016777
lea rcx, [rbx + 0x7180]
mov qword [rbx + 0x7178], rsi
call fcn.140005e84
mov byte [rbx + 0x9529], dil
movzx eax, word [r14 + 2]
mov r15, rsi
mov r12, rsi
test ax, ax
je 0x1400168b8
mov r13, rbp
mov ebx, edi
movzx ecx, ax
call fcn.140049f44
test al, al
je 0x1400167b6
movzx eax, word [r14 + r13]
lea r15, [r15 + r15*4]
lea r15, [r15 - 0x18]
lea r12, [r12 + r12*4]
add r12, r12
lea r15, [rax + r15*2]
jmp 0x1400167c0
cmp word [r14 + r13], 0x2e
cmove r12, rdi
add ebx, edi
lea r13, [rbx + rbx]
movzx eax, word [r14 + r13]
test ax, ax
jne 0x140016790
mov rbx, qword [rsp + 0x50]
test r15, r15
je 0x1400168b8
or rdi, 0xffffffffffffffff
inc rdi
cmp word [r14 + rdi*2], si
jne 0x1400167e2
movzx ecx, word [r14 + rdi*2 - 2]
sub ecx, 0x42
je 0x1400168a6
sub ecx, 4
je 0x140016853
sub ecx, 1
je 0x14001684a
sub ecx, 6
je 0x140016841
sub ecx, 0x15
je 0x1400168a6
sub ecx, 4
je 0x140016853
sub ecx, 1
je 0x14001683b
sub ecx, 4
je 0x140016835
cmp ecx, ebp
je 0x14001682f
imul r15, r15, 0x3e8
jmp 0x1400168a6
shl r15, 0x14
jmp 0x1400168a6
shl r15, 0xa
jmp 0x1400168a6
shl r15, 0x1e
jmp 0x1400168a6
imul r15, r15, 0xf4240
jmp 0x1400168a6
imul r15, r15, 0x3b9aca00
jmp 0x1400168a6
cmp r15, 0x168
je 0x1400168a0
cmp r15, 0x2d0
je 0x140016898
cmp r15, 0x4b0
je 0x140016890
cmp r15, 0x5a0
je 0x140016888
cmp r15, 0xb40
jne 0x1400168a6
mov r15d, 0x2c7c00
jmp 0x1400168a6
mov r15d, 0x163e00
jmp 0x1400168a6
mov r15d, 0x128600
jmp 0x1400168a6
mov r15d, 0xb2400
jmp 0x1400168a6
mov r15d, 0x58800
test r12, r12
je 0x1400168c2
mov rax, r15
cqo
idiv r12
mov r15, rax
jmp 0x1400168c2
movabs r15, 0x7fffffff7fffffff
cmp qword [rbx + 0x7178], rsi
jne 0x1400168d4
mov qword [rbx + 0x7178], r15
jmp 0x140016930
lea rcx, [rbx + 0x7180]
mov rdx, r15
call fcn.1400169c0
jmp 0x140016930
mov byte [rbx + 0x743b], dil
jmp 0x140016930
mov byte [rbx + 0x71cc], dil
jmp 0x140016930
movzx ecx, word [r14 + 4]
call fcn.14004d5f4
cmp eax, 0x52
jne 0x140016930
lea rcx, [r14 + 6]
call fcn.14004d5d0
inc eax
mov dword [rbx + 0x84fc], eax
jmp 0x140016930
mov edi, 1
mov byte [rbx + 0x71c9], dil
jmp 0x140016930
xor esi, esi
mov qword [rbx + 0x7178], rsi
mov rcx, qword [rsp + 0x1860]
xor rcx, rsp
call fcn.140059d10
mov rbx, qword [rsp + 0x18c0]
add rsp, 0x1870
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret