Function at 0x140033a80
Capabilities:
Compute adler32 checksum

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x10], rdx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x30]
sub rsp, 0x140
mov r15, qword [rcx]
xor r11d, r11d
movzx eax, r11w
mov dword [rbp + 4], r11d
mov dword [rbp - 0x28], eax
mov rdi, rcx
mov eax, dword [rbp + 0xa0]
mov r14d, 6
mov rcx, qword [rbp + 0xa8]
test eax, eax
mov rbx, r8
mov qword [rbp - 0x10], r15
cmovns r14d, eax
mov qword [rbp - 0x20], r11
mov qword [rbp + 8], r11
mov r8, rdx
mov dword [rbp - 0x54], r11d
mov r12, r9
mov esi, r11d
movzx edx, r11w
test rcx, rcx
jne 0x140033b04
test r9, r9
je 0x140033b09
bt r14d, 0xa
jb 0x140033b09
mov edx, 8
movzx r9d, dx
mov r10d, 0x800
or r9w, r10w
mov eax, r14d
and eax, 0x10000
mov eax, r14d
cmovne r9w, dx
and eax, 0xf
mov word [rbp + 0xa0], r9w
mov r9d, 1
mov dword [rbp], eax
je 0x140033b48
mov dword [rbp - 0x58], r11d
bt r14d, 0xa
jae 0x140033b4c
mov dword [rbp - 0x58], r9d
mov r13, qword [rdi + 0x68]
test r13, r13
je 0x1400347ad
cmp dword [rdi + 0x14], 2
jne 0x1400347ad
test r12, r12
je 0x140033b71
test rbx, rbx
je 0x1400347ad
test r8, r8
je 0x1400347ad
cmp word [rbp + 0x98], si
je 0x140033b90
cmp qword [rbp + 0x90], rsi
je 0x1400347ad
cmp eax, 0xa
ja 0x1400347ad
mov eax, dword [rdi + 0x10]
cmp dword [r13 + 0x64], esi
je 0x140033bb7
mov edx, 0xffffffff
cmp eax, edx
jne 0x140033be3
mov dword [rdi + 0x1c], 2
jmp 0x1400347b4
cmp eax, 0xffff
jne 0x140033bc9
mov dword [r13 + 0x64], r9d
mov rcx, qword [rbp + 0xa8]
mov edx, 0xffffffff
cmp r12, rdx
ja 0x140033bd8
cmp rcx, rdx
jbe 0x140033be3
mov dword [r13 + 0x64], r9d
mov rcx, qword [rbp + 0xa8]
and r14d, 0x400
mov dword [rbp + 0x70], r14d
jne 0x140033bf9
test rcx, rcx
jne 0x1400347ad
movzx eax, byte [r8]
mov rcx, r8
cmp al, 0x2f
je 0x1400347a4
test al, al
je 0x140033c2b
nop dword [rax]
cmp al, 0x5c
je 0x1400347a4
cmp al, 0x3a
je 0x1400347a4
movzx eax, byte [rcx + 1]
inc rcx
test al, al
jne 0x140033c10
mov rax, qword [rbp + 0xb8]
test rax, rax
je 0x140033c9a
mov rax, qword [rax]
lea rdx, [rbp - 0x18]
lea rcx, [rbp - 0x50]
mov qword [rbp - 0x18], rax
call fcn.1400ffa98
test eax, eax
je 0x140033c5e
xor eax, eax
mov word [rbp - 0x60], ax
mov word [rbp - 0x5c], ax
jmp 0x140033d00
movzx edx, word [rbp - 0x48]
mov ecx, 0x301
mov eax, dword [rbp - 0x50]
sar eax, 1
shl dx, 6
add dx, word [rbp - 0x4c]
shl dx, 5
add dx, ax
movzx eax, word [rbp - 0x3c]
shl ax, 4
add ax, word [rbp - 0x40]
add ax, cx
mov dword [rbp - 0x5c], edx
shl ax, 5
add ax, word [rbp - 0x44]
mov dword [rbp - 0x60], eax
jmp 0x140033d00
lea rcx, [rbp - 0x18]
call fcn.1400ffe54
mov rax, qword [rbp - 0x18]
lea rdx, [rbp - 8]
lea rcx, [rbp - 0x50]
mov qword [rbp - 8], rax
call fcn.1400ffa98
test eax, eax
je 0x140033cc6
xor eax, eax
mov dword [rbp - 0x60], eax
mov dword [rbp - 0x5c], eax
jmp 0x140033d00
movzx ecx, word [rbp - 0x48]
mov eax, dword [rbp - 0x50]
shl cx, 6
add cx, word [rbp - 0x4c]
sar eax, 1
shl cx, 5
add ax, cx
mov ecx, 0x301
mov dword [rbp - 0x5c], eax
movzx eax, word [rbp - 0x3c]
shl ax, 4
add ax, word [rbp - 0x40]
add cx, ax
shl cx, 5
add cx, word [rbp - 0x44]
mov dword [rbp - 0x60], ecx
test r14d, r14d
jne 0x140033d2e
mov r8, r12
mov rdx, rbx
xor ecx, ecx
call fcn.140031bd0
mov dword [rbp - 8], eax
mov qword [rbp + 0xa8], r12
cmp r12, 3
ja 0x140033d37
mov dword [rbp], esi
mov dword [rbp - 0x58], 1
jmp 0x140033d37
mov eax, dword [rbp + 0xb0]
mov dword [rbp - 8], eax
mov rax, qword [rbp + 0x78]
mov r14, 0xffffffffffffffff
inc r14
cmp byte [rax + r14], sil
jne 0x140033d42
cmp r14, 0xffff
ja 0x1400347a4
mov rdx, qword [rdi + 0x20]
test rdx, rdx
je 0x140033d6c
mov eax, dword [rdi]
lea ecx, [rdx - 1]
and eax, ecx
sub edx, eax
and edx, ecx
movzx r10d, word [rbp + 0x98]
mov r11d, 0xffffffff
mov r9, qword [r13 + 8]
mov qword [rbp - 0x18], rdx
lea rcx, [r10 + 0x4a]
add rcx, r9
add rcx, r14
cmp rcx, r11
jb 0x140033d9d
mov dword [rdi + 0x1c], 0xf
jmp 0x1400347b4
mov r8d, dword [r13 + 0x64]
test r8d, r8d
jne 0x140033ddd
mov eax, dword [rbp + 0xc8]
mov ecx, edx
add rax, r10
mov edx, dword [rbp + 0xd8]
add rcx, 0x72
lea rcx, [rcx + r14*2]
add rax, rcx
add rdx, rax
add rdx, r9
add rdx, qword [rdi]
cmp rdx, r11
lea edx, [r8 + 1]
jbe 0x140033de2
mov dword [r13 + 0x64], edx
mov r8d, edx
jmp 0x140033de2
mov edx, 1
test r14, r14
je 0x140033e10
mov rax, qword [rbp + 0x78]
cmp byte [r14 + rax - 1], 0x2f
jne 0x140033e10
mov dword [rbp + 4], 0x10
test r12, r12
jne 0x1400347ad
cmp qword [rbp + 0xa8], rsi
jne 0x1400347ad
mov r12, qword [r13 + 0x10]
test r8d, r8d
mov eax, 0x2e
mov ecx, 0x4a
cmovne eax, ecx
add rax, r10
add rax, r9
add rax, r14
cmp rax, r12
jbe 0x140033e6e
cmp r12, 1
cmovb r12, rdx
cmp r12, rax
jae 0x140033e48
nop
add r12, r12
cmp r12, rax
jb 0x140033e40
mov rax, qword [rdi + 0x38]
mov r9, r12
mov r8d, dword [r13 + 0x18]
mov rdx, qword [r13]
mov rcx, qword [rdi + 0x40]
call rax
test rax, rax
je 0x140033ee5
mov qword [r13], rax
mov qword [r13 + 0x10], r12
mov rax, qword [r13 + 0x28]
mov r12, qword [r13 + 0x30]
inc rax
cmp rax, r12
jbe 0x140033eba
cmp r12, 1
mov ecx, 1
cmovb r12, rcx
cmp r12, rax
jae 0x140033e98
add r12, r12
cmp r12, rax
jb 0x140033e90
mov rax, qword [rdi + 0x38]
mov r9, r12
mov r8d, dword [r13 + 0x38]
mov rdx, qword [r13 + 0x20]
mov rcx, qword [rdi + 0x40]
call rax
test rax, rax
je 0x140033ee5
mov qword [r13 + 0x20], rax
mov qword [r13 + 0x30], r12
cmp dword [rbp - 0x58], esi
jne 0x140033ef1
cmp qword [rbp + 0x88], rsi
je 0x140033ef1
mov rax, qword [rdi + 0x28]
mov edx, 1
mov rcx, qword [rdi + 0x40]
mov r8d, 0x4df78
call rax
mov rsi, rax
test rax, rax
jne 0x140033ef1
mov dword [rdi + 0x1c], 0x10
jmp 0x1400347b4
mov r12, qword [rbp - 0x18]
mov rdx, r15
mov r8d, r12d
mov rcx, rdi
call fcn.140035a10
test eax, eax
jne 0x140033f16
mov rcx, qword [rdi + 0x40]
mov rdx, rsi
call qword [rdi + 0x30]
jmp 0x1400347b4
mov r10, qword [rbp - 0x10]
mov ecx, r12d
add r10, rcx
add r15, rcx
cmp dword [rbp - 0x58], 0
mov qword [rbp - 0x10], r10
je 0x140033f33
cmp dword [rbp + 0x70], 0
je 0x140033f3d
mov edx, 8
mov dword [rbp - 0x28], edx
jmp 0x140033f40
mov edx, dword [rbp - 0x28]
cmp dword [r13 + 0x64], 0
mov r13d, 0xffffffff
je 0x1400340b6
mov rax, qword [rbp + 0xa8]
cmp rax, r13
jae 0x140033f62
cmp r10, r13
jb 0x140033fa2
cmp r10, r13
lea rcx, [rbp + 0x10]
mov qword [rbp + 8], rcx
lea r9, [rbp - 0x10]
mov ecx, 0
lea r8, [rbp - 0x20]
cmovb r9, rcx
lea rdx, [rbp + 0xa8]
cmp rax, r13
cmovb r8, rcx
cmovb rdx, rcx
lea rcx, [rbp + 0x10]
call fcn.140034e30
mov r10, qword [rbp - 0x10]
mov dword [rbp - 0x54], eax
jmp 0x140033fa5
mov eax, dword [rbp - 0x54]
mov r9d, dword [rbp - 0x28]
movzx ecx, r9w
mov r12d, dword [rbp + 0xc8]
neg cx
mov rcx, qword [rdi + 0x60]
sbb dl, dl
mov byte [rbp - 0x78], r9b
and dl, 0x14
mov dword [rbp - 0x80], 0x4034b50
lea r8d, [rax + r12]
mov byte [rbp - 0x7c], dl
movzx eax, word [rbp + 0xa0]
mov rdx, r10
mov byte [rbp - 0x7a], al
shr ax, 8
mov byte [rbp - 0x79], al
movzx eax, r9w
shr ax, 8
mov r9d, 0x1e
mov byte [rbp - 0x77], al
mov eax, dword [rbp - 0x5c]
mov byte [rbp - 0x76], al
shr ax, 8
mov byte [rbp - 0x75], al
mov eax, dword [rbp - 0x60]
mov byte [rbp - 0x74], al
shr ax, 8
mov byte [rbp - 0x73], al
movzx eax, r14w
mov word [rbp + 0x70], ax
mov byte [rbp - 0x64], r8b
shr ax, 8
shr r8w, 8
mov byte [rbp - 0x65], al
mov rax, qword [rdi + 0x50]
mov byte [rbp - 0x63], r8b
lea r8, [rbp - 0x80]
mov byte [rbp - 0x7b], 0
mov qword [rbp - 0x72], 0
mov dword [rbp - 0x6a], 0
mov byte [rbp - 0x66], r14b
call rax
cmp rax, 0x1e
jne 0x14003407a
mov r8, qword [rbp + 0x78]
add r15, rax
mov rax, qword [rdi + 0x50]
mov rdx, r15
mov rcx, qword [rdi + 0x60]
mov r9, r14
call rax
cmp rax, r14
je 0x140034086
mov rcx, qword [rdi + 0x40]
mov rdx, rsi
call qword [rdi + 0x30]
mov dword [rdi + 0x1c], 0x13
jmp 0x1400347b4
add r15, r14
cmp qword [rbp + 8], 0
je 0x140034196
mov r14d, dword [rbp - 0x54]
lea r8, [rbp + 0x10]
mov rax, qword [rdi + 0x50]
mov r9d, r14d
mov rcx, qword [rdi + 0x60]
mov rdx, r15
call rax
cmp rax, r14
jne 0x14003407a
jmp 0x140034193
cmp qword [rbp - 0x20], r13
ja 0x14003479b
cmp r15, r13
ja 0x14003479b
mov r12d, dword [rbp + 0xc8]
lea r8, [rbp - 0x80]
movzx eax, dx
mov byte [rbp - 0x78], dl
neg ax
mov dword [rbp - 0x80], 0x4034b50
movzx eax, word [rbp + 0xa0]
mov r9d, 0x1e
mov byte [rbp - 0x7a], al
sbb cl, cl
shr ax, 8
and cl, 0x14
mov byte [rbp - 0x79], al
movzx eax, dx
shr ax, 8
mov rdx, r10
mov byte [rbp - 0x77], al
mov eax, dword [rbp - 0x5c]
mov byte [rbp - 0x76], al
shr ax, 8
mov byte [rbp - 0x75], al
mov eax, dword [rbp - 0x60]
mov byte [rbp - 0x74], al
shr ax, 8
mov byte [rbp - 0x73], al
movzx eax, r14w
mov word [rbp + 0x70], ax
shr ax, 8
mov byte [rbp - 0x65], al
movzx eax, r12w
shr ax, 8
mov byte [rbp - 0x63], al
mov rax, qword [rdi + 0x50]
mov byte [rbp - 0x7c], cl
mov rcx, qword [rdi + 0x60]
mov byte [rbp - 0x7b], 0
mov qword [rbp - 0x72], 0
mov dword [rbp - 0x6a], 0
mov byte [rbp - 0x66], r14b
mov byte [rbp - 0x64], r12b
call rax
cmp rax, 0x1e
jne 0x14003407a
mov r8, qword [rbp + 0x78]
add r15, rax
mov rax, qword [rdi + 0x50]
mov rdx, r15
mov rcx, qword [rdi + 0x60]
mov r9, r14
call rax
cmp rax, r14
jne 0x140034070
add r15, r14
test r12d, r12d
je 0x1400341c1
mov rax, qword [rdi + 0x50]
mov rdx, r15
mov r8, qword [rbp + 0xc0]
mov rcx, qword [rdi + 0x60]
mov r9d, r12d
mov r14d, r12d
call rax
cmp rax, r14
jne 0x14003407a
add r15, r14
cmp dword [rbp - 0x58], 0
mov r14, qword [rbp + 0x88]
je 0x140034291
mov rax, qword [rdi + 0x50]
mov r9, r14
mov rcx, qword [rdi + 0x60]
mov r8, rbx
mov rdx, r15
call rax
cmp rax, r14
jne 0x140034070
add r15, r14
mov qword [rbp - 0x20], r14
xor r12d, r12d
mov rcx, qword [rdi + 0x40]
mov rdx, rsi
call qword [rdi + 0x30]
mov r10, qword [rbp + 0xa8]
mov esi, dword [rbp - 8]
test r10, r10
je 0x1400346b6
mov rcx, qword [rbp - 0x20]
mov eax, esi
shr eax, 8
mov byte [rbp - 0x4b], al
mov eax, esi
shr eax, 0x10
mov byte [rbp - 0x4a], al
mov eax, esi
shr eax, 0x18
cmp qword [rbp + 8], 0
mov dword [rbp - 0x50], 0x8074b50
mov byte [rbp - 0x4c], sil
mov byte [rbp - 0x49], al
jne 0x140034611
cmp rcx, r13
ja 0x14003479b
mov eax, ecx
mov byte [rbp - 0x48], cl
shr eax, 8
mov ebx, 0x10
mov byte [rbp - 0x47], al
mov eax, ecx
shr eax, 0x10
mov byte [rbp - 0x46], al
mov eax, r10d
shr eax, 8
mov byte [rbp - 0x43], al
mov eax, r10d
shr eax, 0x10
shr ecx, 0x18
mov byte [rbp - 0x44], r10b
shr r10d, 0x18
mov byte [rbp - 0x41], r10b
mov byte [rbp - 0x45], cl
mov byte [rbp - 0x42], al
jmp 0x14003468f
test r14, r14
je 0x1400341f5
mov edx, dword [rbp]
lea r8, [0x140127ae8]
xor r12d, r12d
mov qword [rbp - 0x48], r15
mov ecx, 0xa
mov qword [rbp - 0x50], rdi
cmp edx, ecx
mov qword [rbp - 0x40], r12
mov eax, edx
mov r15d, 0x4000
cmova eax, ecx
cmp edx, 3
mov ecx, eax
mov eax, r12d
cmovbe eax, r15d
or eax, dword [r8 + rcx*4]
lea r8, [rbp - 0x50]
mov r9d, eax
mov rcx, rsi
bts r9d, 0x13
test edx, edx
lea rdx, [0x1400347e0]
cmovne r9d, eax
call fcn.140037610
test eax, eax
jne 0x1400345fb
mov qword [rbp - 0x18], r14
test rsi, rsi
je 0x1400345fb
lea rax, [rbp - 0x18]
mov qword [rsi + 0x88], rbx
mov qword [rsi + 0x98], rax
mov qword [rsi + 0x90], r12
mov qword [rsi + 0xa0], r12
mov qword [rsi + 0xb0], rbx
mov qword [rsi + 0xb8], r14
mov qword [rsi + 0xc0], r12
mov dword [rsi + 0xa8], 4
cmp qword [rsi], r12
je 0x1400345f1
cmp dword [rsi + 0x84], r12d
jne 0x1400345f1
test rbx, rbx
je 0x1400345f1
or dword [rsi + 0x80], 1
mov eax, dword [rsi + 0x74]
test eax, eax
jne 0x1400345e0
cmp dword [rsi + 0x78], r12d
jne 0x1400345e6
mov ecx, dword [rsi + 0x10]
mov eax, ecx
and eax, 0xfff
cmp eax, 1
jne 0x1400343b6
and ecx, 0xb4000
cmp ecx, r15d
jne 0x1400343b6
mov rcx, rsi
call fcn.140035c90
test eax, eax
jne 0x1400343cd
mov eax, dword [rsi + 0x84]
jmp 0x1400345ca
mov rcx, rsi
call fcn.140036530
test eax, eax
jne 0x1400343cd
mov eax, dword [rsi + 0x84]
jmp 0x1400345ca
test dword [rsi + 0x10], 0x3000
je 0x1400344f5
mov r11, qword [rsi + 0xb0]
movabs rax, 0x79baa6bb6398b6f7
mov r8d, dword [rsi + 0x20]
sub r11, rbx
mul r11
mov rax, r11
movzx ecx, r8w
sub rax, rdx
shr r8d, 0x10
shr rax, 1
mov r9, r11
add rax, rdx
shr rax, 0xc
imul rax, rax, 0x15b0
sub r9, rax
test r11, r11
je 0x1400344ea
mov edx, r12d
cmp r9, 7
jbe 0x14003449a
mov r10d, 7
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rbx]
add r10d, 8
add ecx, eax
add edx, 8
movzx eax, byte [rbx + 1]
add r8d, ecx
add ecx, eax
movzx eax, byte [rbx + 2]
add r8d, ecx
add ecx, eax
movzx eax, byte [rbx + 3]
add r8d, ecx
add ecx, eax
movzx eax, byte [rbx + 4]
add r8d, ecx
add ecx, eax
movzx eax, byte [rbx + 5]
add r8d, ecx
add ecx, eax
movzx eax, byte [rbx + 6]
add r8d, ecx
add ecx, eax
movzx eax, byte [rbx + 7]
add r8d, ecx
add ecx, eax
add rbx, 8
add r8d, ecx
mov eax, r10d
cmp rax, r9
jb 0x140034440
mov eax, edx
cmp rax, r9
jae 0x1400344b5
movzx eax, byte [rbx]
inc edx
add ecx, eax
inc rbx
add r8d, ecx
mov eax, edx
cmp rax, r9
jb 0x1400344a1
mov eax, 0x80078071
mul ecx
shr edx, 0xf
imul eax, edx, 0xffff000f
add ecx, eax
mov eax, 0x80078071
mul r8d
shr edx, 0xf
imul eax, edx, 0xffff000f
add r8d, eax
sub r11, r9
mov r9d, 0x15b0
jne 0x140034423
shl r8d, 0x10
lea eax, [r8 + rcx]
mov dword [rsi + 0x20], eax
cmp dword [rsi + 0x28], r12d
jne 0x140034532
cmp qword [rsi + 0xb8], r12
jne 0x140034532
cmp dword [rsi + 0x74], r12d
jne 0x140034532
mov edx, 4
mov rcx, rsi
call fcn.140036e30
test eax, eax
jns 0x140034526
mov eax, dword [rsi + 0x84]
jmp 0x1400345ca
mov r14d, 1
mov dword [rsi + 0x78], r14d
jmp 0x140034538
mov r14d, 1
mov rcx, qword [rsi + 0x98]
test rcx, rcx
je 0x140034555
mov rax, qword [rsi + 0xb0]
sub rax, qword [rsi + 0x88]
mov qword [rcx], rax
mov rbx, qword [rsi + 0xa0]
test rbx, rbx
je 0x1400345b2
mov rcx, qword [rsi + 0xc0]
mov rbx, qword [rbx]
mov eax, dword [rsi + 0x74]
sub rbx, rcx
mov edx, dword [rsi + 0x70]
cmp rbx, rax
cmovae rbx, rax
add rcx, qword [rsi + 0x90]
add rdx, 0x392aa
mov r8, rbx
add rdx, rsi
call fcn.1400ee610
add dword [rsi + 0x70], ebx
sub dword [rsi + 0x74], ebx
add qword [rsi + 0xc0], rbx
mov rax, qword [rsi + 0xa0]
mov rcx, qword [rsi + 0xc0]
mov qword [rax], rcx
cmp dword [rsi + 0x78], r12d
je 0x1400345c1
mov eax, r14d
cmp dword [rsi + 0x74], r12d
je 0x1400345c4
mov eax, r12d
mov dword [rsi + 0x84], eax
cmp eax, 1
jne 0x1400345fb
mov rax, qword [rbp - 0x40]
mov r15, qword [rbp - 0x48]
mov qword [rbp - 0x20], rax
jmp 0x1400341f8
cmp dword [rsi + 0x78], r12d
je 0x1400345c1
test eax, eax
jne 0x1400345c1
mov eax, 1
jmp 0x1400345c4
mov dword [rsi + 0x84], 0xfffffffe
mov rcx, qword [rdi + 0x40]
mov rdx, rsi
call qword [rdi + 0x30]
mov dword [rdi + 0x1c], 0xc
jmp 0x1400347b4
mov eax, ecx
mov byte [rbp - 0x48], cl
shr eax, 8
mov ebx, 0x18
mov byte [rbp - 0x47], al
mov eax, ecx
shr eax, 0x10
mov byte [rbp - 0x46], al
mov eax, ecx
shr eax, 0x18
mov byte [rbp - 0x45], al
shr rcx, 0x20
mov eax, ecx
mov byte [rbp - 0x40], r10b
shr eax, 8
mov byte [rbp - 0x43], al
mov eax, ecx
shr eax, 0x10
mov byte [rbp - 0x42], al
mov eax, r10d
shr eax, 8
mov byte [rbp - 0x3f], al
mov eax, r10d
shr eax, 0x10
mov byte [rbp - 0x3e], al
mov eax, r10d
shr eax, 0x18
shr r10, 0x20
mov byte [rbp - 0x3d], al
mov eax, r10d
shr eax, 8
mov byte [rbp - 0x3b], al
mov eax, r10d
shr eax, 0x10
mov byte [rbp - 0x44], cl
shr ecx, 0x18
mov byte [rbp - 0x3c], r10b
shr r10d, 0x18
mov byte [rbp - 0x39], r10b
mov byte [rbp - 0x41], cl
mov byte [rbp - 0x3a], al
mov rax, qword [rdi + 0x50]
lea r8, [rbp - 0x50]
mov rcx, qword [rdi + 0x60]
mov r9, rbx
mov rdx, r15
call rax
cmp rax, rbx
jne 0x1400347b4
mov r10, qword [rbp + 0xa8]
add r15, rbx
mov rbx, qword [rbp + 8]
test rbx, rbx
je 0x1400346f4
cmp qword [rbp - 0x10], r13
lea r9, [rbp - 0x10]
lea r8, [rbp - 0x20]
cmovb r9, r12
lea rdx, [rbp + 0xa8]
cmp r10, r13
lea rcx, [rbp + 0x10]
cmovb r8, r12
cmovb rdx, r12
call fcn.140034e30
mov r10, qword [rbp + 0xa8]
mov dword [rbp - 0x54], eax
mov eax, dword [rbp + 0xd8]
mov r9, rbx
mov ecx, dword [rbp - 0x60]
movzx r8d, word [rbp + 0x70]
mov rdx, qword [rbp + 0x78]
mov dword [rsp + 0x88], eax
mov rax, qword [rbp + 0xd0]
mov qword [rsp + 0x80], rax
mov eax, dword [rbp + 4]
mov dword [rsp + 0x78], eax
mov rax, qword [rbp - 0x10]
mov qword [rsp + 0x70], rax
mov eax, dword [rbp - 0x5c]
mov word [rsp + 0x68], cx
mov rcx, rdi
mov word [rsp + 0x60], ax
movzx eax, word [rbp + 0xa0]
mov word [rsp + 0x58], ax
mov eax, dword [rbp - 0x28]
mov word [rsp + 0x50], ax
mov rax, qword [rbp - 0x20]
mov dword [rsp + 0x48], esi
mov qword [rsp + 0x40], rax
movzx eax, word [rbp + 0x98]
mov qword [rsp + 0x38], r10
mov word [rsp + 0x30], ax
mov rax, qword [rbp + 0x90]
mov qword [rsp + 0x28], rax
mov eax, dword [rbp - 0x54]
mov word [rsp + 0x20], ax
call fcn.140034840
test eax, eax
je 0x1400347b4
inc dword [rdi + 0x10]
mov eax, 1
mov qword [rdi], r15
jmp 0x1400347b6
mov dword [rdi + 0x1c], 0x1d
jmp 0x1400347b4
mov dword [rdi + 0x1c], 0x19
jmp 0x1400347b4
mov dword [rdi + 0x1c], 0x18
xor eax, eax
mov rbx, qword [rsp + 0x190]
add rsp, 0x140
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret