Function at 0x140011f58
Capabilities:
Compress data via zlib inflate or deflate

Disassembly:
mov dword [rsp + 0x10], edx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x48
xor r10d, r10d
mov r12d, edx
mov r14, rcx
test rcx, rcx
je 0x14001203e
mov rbx, qword [rcx + 0x28]
test rbx, rbx
je 0x14001203e
mov r9, qword [rcx + 0x10]
mov qword [rsp + 0x38], r9
test r9, r9
je 0x14001203e
mov r15, qword [rcx]
test r15, r15
jne 0x140011faf
cmp dword [rcx + 8], r10d
jne 0x14001203e
cmp dword [rbx], 0xb
jne 0x140011fc6
mov dword [rbx], 0xc
mov r9, qword [rcx + 0x10]
mov r15, qword [rcx]
mov qword [rsp + 0x38], r9
mov r11d, dword [rcx + 0x18]
mov r13d, r11d
mov ebp, dword [rcx + 8]
mov esi, dword [rbx + 0x40]
mov edi, dword [rbx + 0x44]
mov dword [rsp + 0xa0], r11d
mov dword [rsp + 0x34], ebp
mov dword [rsp + 0x30], r11d
mov dword [rsp + 0x90], r10d
mov r8d, 0x10
mov edx, 7
mov ecx, dword [rbx]
cmp ecx, 0x12
jg 0x140012991
je 0x1400127e1
cmp ecx, 0xd
jg 0x140012342
je 0x140012276
test ecx, ecx
je 0x140012197
sub ecx, 9
je 0x14001206e
sub ecx, 1
je 0x1400120a7
sub ecx, 1
je 0x1400120dd
cmp ecx, 1
je 0x1400120e7
mov eax, 0xfffffffe
add rsp, 0x48
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
test ebp, ebp
je 0x140012d5b
movzx eax, byte [r15]
mov ecx, edi
shl eax, cl
dec ebp
add esi, eax
inc r15
add edi, 8
cmp edi, 0x20
jb 0x140012054
mov ecx, esi
mov eax, esi
shl eax, 0x10
mov edx, 0xff00
and ecx, edx
mov edi, r10d
add ecx, eax
mov eax, esi
shr eax, 8
and eax, edx
shl ecx, 8
shr esi, 0x18
add eax, ecx
add eax, esi
mov esi, r10d
mov dword [rbx + 0x18], eax
mov dword [r14 + 0x4c], eax
mov dword [rbx], 0xa
cmp dword [rbx + 0xc], r10d
je 0x140012d03
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.140014b84
mov r11d, dword [rsp + 0xa0]
xor r10d, r10d
mov dword [rbx + 0x18], eax
mov dword [r14 + 0x4c], eax
mov dword [rbx], 0xb
lea edx, [r10 + 7]
lea r8d, [r10 + 0x10]
cmp r12d, 5
je 0x140012d5b
cmp dword [rbx + 4], r10d
je 0x14001211a
mov ecx, edi
mov dword [rbx], 0x18
and ecx, edx
shr esi, cl
sub edi, ecx
jmp 0x140012cf9
test ebp, ebp
je 0x140012d5b
movzx eax, byte [r15]
mov ecx, edi
shl eax, cl
dec ebp
add esi, eax
inc r15
add edi, 8
cmp edi, 3
jb 0x140012100
mov eax, esi
shr esi, 1
and eax, 1
mov dword [rbx + 4], eax
mov eax, esi
and eax, 3
je 0x140012186
sub eax, 1
je 0x14001215a
sub eax, 1
je 0x140012152
cmp eax, 1
jne 0x14001218c
lea rax, [0x140016870]
mov qword [r14 + 0x20], rax
mov dword [rbx], 0x1b
jmp 0x14001218c
mov dword [rbx], 0xf
jmp 0x14001218c
lea rax, [0x14001efd0]
mov dword [rbx + 0x68], 9
mov qword [rbx + 0x58], rax
lea rax, [0x14001f7d0]
mov qword [rbx + 0x60], rax
mov dword [rbx + 0x6c], 5
mov dword [rbx], 0x12
jmp 0x14001218c
mov dword [rbx], 0xd
shr esi, 2
add edi, 0xfffffffd
jmp 0x140012cf9
cmp dword [rbx + 8], r10d
jne 0x1400121c2
mov dword [rbx], 0xc
jmp 0x140011ffa
test ebp, ebp
je 0x140012d5b
movzx eax, byte [r15]
mov ecx, edi
shl eax, cl
dec ebp
add esi, eax
inc r15
add edi, 8
cmp edi, r8d
jb 0x1400121a8
movzx ecx, sil
mov eax, esi
shr eax, 8
shl ecx, 8
add ecx, eax
mov eax, 0x8421085
mul ecx
mov eax, ecx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 4
imul eax, eax, 0x1f
cmp ecx, eax
je 0x140012204
lea rax, [0x140016810]
mov qword [r14 + 0x20], rax
mov dword [rbx], 0x1b
jmp 0x140011ff5
mov eax, esi
and al, 0xf
cmp al, 8
je 0x140012215
lea rax, [0x140016830]
jmp 0x1400121f5
shr esi, 4
add edi, 0xfffffffc
mov ecx, esi
and ecx, 0xf
add ecx, 8
cmp ecx, dword [rbx + 0x28]
jbe 0x140012231
lea rax, [0x140016850]
jmp 0x1400121f5
mov eax, 1
xor r8d, r8d
shl eax, cl
xor edx, edx
xor ecx, ecx
mov dword [rbx + 0x14], eax
call fcn.140014b84
shr esi, 8
not esi
mov dword [rbx + 0x18], eax
and esi, 2
mov dword [r14 + 0x4c], eax
or esi, 9
xor r10d, r10d
mov dword [rbx], esi
mov esi, r10d
mov edi, r10d
mov r9, qword [rsp + 0x38]
mov r11d, dword [rsp + 0xa0]
jmp 0x140011fef
mov ecx, edi
and ecx, edx
shr esi, cl
sub edi, ecx
jmp 0x14001229a
test ebp, ebp
je 0x140012d5b
movzx eax, byte [r15]
mov ecx, edi
shl eax, cl
dec ebp
add esi, eax
inc r15
add edi, 8
cmp edi, 0x20
jb 0x140012280
mov eax, esi
movzx ecx, si
not eax
shr eax, 0x10
cmp ecx, eax
je 0x1400122c3
lea rax, [0x140016890]
mov qword [r14 + 0x20], rax
mov dword [rbx], 0x1b
jmp 0x140011ffa
mov dword [rbx + 0x48], ecx
mov esi, r10d
mov edi, r10d
mov dword [rbx], 0xe
mov ecx, dword [rbx + 0x48]
test ecx, ecx
je 0x14001283a
cmp ecx, ebp
mov eax, ebp
mov r12d, r11d
cmovbe eax, ecx
cmp eax, r11d
cmovbe r12d, eax
test r12d, r12d
je 0x140012d5b
mov r8d, r12d
mov rdx, r15
mov rcx, r9
call fcn.140015a80
mov r11d, dword [rsp + 0xa0]
sub ebp, r12d
mov r9, qword [rsp + 0x38]
sub r11d, r12d
mov eax, r12d
add r15, rax
add r9, rax
sub dword [rbx + 0x48], r12d
mov r12d, dword [rsp + 0x98]
mov qword [rsp + 0x38], r9
mov dword [rsp + 0xa0], r11d
xor r10d, r10d
jmp 0x140011fef
sub ecx, 0xe
je 0x1400122d2
sub ecx, 1
je 0x140012379
sub ecx, 1
je 0x1400123ce
cmp ecx, 1
jne 0x14001203e
jmp 0x1400124b8
test ebp, ebp
je 0x140012d5b
movzx eax, byte [r15]
mov ecx, edi
shl eax, cl
dec ebp
add esi, eax
inc r15
add edi, 8
cmp edi, 0xe
jb 0x14001235f
mov ecx, esi
add edi, 0xfffffff2
shr esi, 5
and ecx, 0x1f
mov edx, esi
add ecx, 0x101
shr esi, 5
and edx, 0x1f
mov eax, esi
mov dword [rbx + 0x74], ecx
and eax, 0xf
shr esi, 4
add eax, 4
inc edx
mov dword [rbx + 0x78], edx
mov dword [rbx + 0x70], eax
cmp ecx, 0x11e
ja 0x14001282e
cmp edx, 0x1e
ja 0x14001282e
mov dword [rbx + 0x7c], r10d
mov edx, 7
mov dword [rbx], r8d
lea r8, [0x14001f850]
mov eax, dword [rbx + 0x7c]
cmp eax, dword [rbx + 0x70]
jb 0x14001247c
cmp eax, 0x13
jae 0x140012400
mov eax, dword [rbx + 0x7c]
movzx ecx, word [r8 + rax*2]
mov word [rbx + rcx*2 + 0x88], r10w
inc dword [rbx + 0x7c]
cmp dword [rbx + 0x7c], 0x13
jb 0x1400123e6
lea rcx, [rbx + 0x68]
lea rax, [rbx + 0x548]
mov dword [rcx], edx
lea r9, [rbx + 0x80]
mov qword [rbx + 0x58], rax
mov qword [r9], rax
lea rdx, [rbx + 0x88]
lea rax, [rbx + 0x308]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
xor ecx, ecx
lea r8d, [rcx + 0x13]
call fcn.140014e9c
xor r10d, r10d
mov dword [rsp + 0x90], eax
test eax, eax
je 0x1400124a5
lea rax, [0x1400168e0]
mov qword [r14 + 0x20], rax
mov dword [rbx], 0x1b
jmp 0x140012264
test ebp, ebp
je 0x140012d5b
movzx eax, byte [r15]
mov ecx, edi
shl eax, cl
dec ebp
add esi, eax
inc r15
add edi, 8
cmp edi, 3
jb 0x140012462
mov eax, dword [rbx + 0x7c]
movzx ecx, si
and cx, dx
shr esi, 3
movzx eax, word [r8 + rax*2]
mov word [rbx + rax*2 + 0x88], cx
inc dword [rbx + 0x7c]
add edi, 0xfffffffd
jmp 0x1400123d5
mov r11d, dword [rsp + 0xa0]
mov eax, 0x11
mov dword [rbx], eax
mov dword [rbx + 0x7c], r10d
mov eax, dword [rbx + 0x78]
add eax, dword [rbx + 0x74]
cmp dword [rbx + 0x7c], eax
jae 0x1400126e1
mov ecx, dword [rbx + 0x68]
mov edx, 1
mov r8, qword [rbx + 0x58]
shl edx, cl
dec edx
mov eax, esi
mov ecx, edx
and rcx, rax
mov eax, dword [r8 + rcx*4]
mov ecx, eax
shr ecx, 8
or r9d, 0xffffffff
movzx ecx, cl
mov dword [rsp + 0xa8], eax
cmp ecx, edi
jbe 0x140012526
test ebp, ebp
je 0x140012d5b
movzx eax, byte [r15]
mov ecx, edi
shl eax, cl
add ebp, r9d
add esi, eax
inc r15
mov ecx, esi
add edi, 8
mov eax, edx
and rax, rcx
mov eax, dword [r8 + rax*4]
mov ecx, eax
shr ecx, 8
jmp 0x1400124eb
mov ecx, eax
mov r8d, 0x10
shr ecx, 0x10
cmp cx, r8w
jae 0x140012588
shr eax, 8
movzx edx, al
jmp 0x14001255a
test ebp, ebp
je 0x140012d5b
movzx eax, byte [r15]
mov ecx, edi
shl eax, cl
add ebp, r9d
add esi, eax
inc r15
add edi, 8
cmp edi, edx
jb 0x14001253f
movzx ecx, byte [rsp + 0xa9]
movzx eax, word [rsp + 0xaa]
sub edi, ecx
shr esi, cl
mov ecx, dword [rbx + 0x7c]
mov word [rbx + rcx*2 + 0x88], ax
inc dword [rbx + 0x7c]
mov ecx, dword [rbx + 0x7c]
jmp 0x1400126c0
cmp word [rsp + 0xaa], r8w
jne 0x1400125f0
movzx edx, byte [rsp + 0xa9]
lea r8d, [rdx + 2]
jmp 0x1400125bc
test ebp, ebp
je 0x140012d5b
movzx eax, byte [r15]
mov ecx, edi
shl eax, cl
add ebp, r9d
add esi, eax
inc r15
add edi, 8
cmp edi, r8d
jb 0x1400125a1
mov eax, dword [rbx + 0x7c]
mov ecx, edx
shr esi, cl
sub edi, edx
test eax, eax
je 0x140012768
mov edx, esi
add edi, 0xfffffffe
and edx, 3
shr esi, 2
add edx, 3
dec eax
movzx r8d, word [rbx + rax*2 + 0x88]
jmp 0x14001268d
movzx r8d, byte [rsp + 0xa9]
mov eax, 0x11
cmp word [rsp + 0xaa], ax
jne 0x14001264a
lea edx, [r8 + 3]
jmp 0x140012629
test ebp, ebp
je 0x140012d5b
movzx eax, byte [r15]
mov ecx, edi
shl eax, cl
add ebp, r9d
add esi, eax
inc r15
add edi, 8
cmp edi, edx
jb 0x14001260e
mov ecx, r8d
mov eax, 0xfffffffd
shr esi, cl
mov edx, esi
shr esi, 3
and edx, 7
add edx, 3
sub eax, r8d
mov r8d, r10d
jmp 0x14001268b
lea edx, [r8 + 7]
jmp 0x14001266b
test ebp, ebp
je 0x140012d5b
movzx eax, byte [r15]
mov ecx, edi
shl eax, cl
add ebp, r9d
add esi, eax
inc r15
add edi, 8
cmp edi, edx
jb 0x140012650
mov ecx, r8d
mov eax, 0xfffffff9
shr esi, cl
mov edx, esi
shr esi, 7
and edx, 0x7f
add edx, 0xb
sub eax, r8d
movzx r8d, r10w
add edi, eax
mov ecx, dword [rbx + 0x7c]
mov eax, dword [rbx + 0x78]
add ecx, edx
add eax, dword [rbx + 0x74]
cmp ecx, eax
ja 0x140012768
mov eax, dword [rbx + 0x7c]
mov word [rbx + rax*2 + 0x88], r8w
mov ecx, dword [rbx + 0x7c]
lea ecx, [rcx + 1]
mov dword [rbx + 0x7c], ecx
add edx, r9d
jne 0x1400126a0
mov r8d, 0x10
mov eax, dword [rbx + 0x78]
add eax, dword [rbx + 0x74]
cmp ecx, eax
jb 0x1400124c7
cmp dword [rbx], 0x1b
mov edx, 7
mov r9, qword [rsp + 0x38]
je 0x140011ffa
mov r8d, dword [rbx + 0x74]
lea rax, [rbx + 0x548]
lea r12, [rbx + 0x80]
mov qword [rbx + 0x58], rax
mov qword [r12], rax
lea r13, [rbx + 0x308]
lea rax, [rbx + 0x68]
mov qword [rsp + 0x28], r13
lea rdx, [rbx + 0x88]
mov dword [rax], 9
mov r9, r12
mov qword [rsp + 0x20], rax
mov ecx, 1
call fcn.140014e9c
xor r10d, r10d
mov dword [rsp + 0x90], eax
test eax, eax
je 0x140012774
lea rax, [0x140016920]
mov r13d, dword [rsp + 0x30]
mov r9, qword [rsp + 0x38]
mov r11d, dword [rsp + 0xa0]
mov r12d, dword [rsp + 0x98]
mov qword [r14 + 0x20], rax
mov dword [rbx], 0x1b
jmp 0x140011fef
lea rax, [0x140016900]
jmp 0x140012969
mov rax, qword [r12]
lea rcx, [rbx + 0x6c]
mov r8d, dword [rbx + 0x78]
mov r9, r12
mov qword [rbx + 0x60], rax
mov eax, dword [rbx + 0x74]
add rax, 0x44
mov dword [rcx], 6
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x20], rcx
mov ecx, 2
lea rdx, [rbx + rax*2]
call fcn.140014e9c
xor r10d, r10d
mov dword [rsp + 0x90], eax
test eax, eax
je 0x1400127c6
lea rax, [0x140016940]
jmp 0x14001273f
mov r13d, dword [rsp + 0x30]
mov r11d, dword [rsp + 0xa0]
mov r12d, dword [rsp + 0x98]
mov dword [rbx], 0x12
cmp ebp, 6
jb 0x140012845
cmp r11d, 0x102
jb 0x140012845
mov rcx, qword [rsp + 0x38]
mov edx, r13d
mov qword [r14 + 0x10], rcx
mov rcx, r14
mov dword [r14 + 0x18], r11d
mov qword [r14], r15
mov dword [r14 + 8], ebp
mov dword [rbx + 0x40], esi
mov dword [rbx + 0x44], edi
call fcn.140015344
mov r9, qword [r14 + 0x10]
mov r11d, dword [r14 + 0x18]
mov r15, qword [r14]
mov ebp, dword [r14 + 8]
mov esi, dword [rbx + 0x40]
mov edi, dword [rbx + 0x44]
jmp 0x14001232d
lea rax, [0x1400168b0]
jmp 0x1400121f5
mov dword [rbx], 0xb
jmp 0x140011ffa
mov ecx, dword [rbx + 0x68]
mov edx, 1
mov r10, qword [rbx + 0x58]
shl edx, cl
dec edx
mov eax, esi
mov ecx, edx
and rcx, rax
mov eax, dword [r10 + rcx*4]
jmp 0x140012887
test ebp, ebp
je 0x140012d5b
movzx eax, byte [r15]
mov ecx, edi
shl eax, cl
dec ebp
add esi, eax
inc r15
mov ecx, esi
add edi, 8
mov eax, edx
and rax, rcx
mov eax, dword [r10 + rax*4]
mov ecx, eax
shr ecx, 8
movzx ecx, cl
cmp ecx, edi
ja 0x140012862
test al, al
je 0x140012927
test al, 0xf0
jne 0x140012927
mov ecx, eax
mov dword [rsp + 0xa8], eax
shr ecx, 8
mov edx, eax
movzx r9d, cl
movzx ecx, al
shr eax, 0x10
jmp 0x1400128eb
test ebp, ebp
je 0x140012d5b
movzx eax, byte [r15]
mov ecx, edi
movzx r9d, byte [rsp + 0xa9]
dec ebp
shl eax, cl
inc r15
add esi, eax
movzx ecx, dl
movzx eax, word [rsp + 0xaa]
add edi, 8
add ecx, r9d
mov r8d, 1
shl r8d, cl
mov ecx, r9d
dec r8d
and r8d, esi
shr r8d, cl
add r8d, eax
mov eax, dword [r10 + r8*4]
mov ecx, eax
shr ecx, 8
movzx r8d, cl
add r8d, r9d
cmp r8d, edi
ja 0x1400128bd
movzx ecx, byte [rsp + 0xa9]
shr esi, cl
sub edi, ecx
mov ecx, eax
xor r10d, r10d
shr ecx, 8
movzx ecx, cl
shr esi, cl
sub edi, ecx
mov ecx, eax
shr ecx, 0x10
mov dword [rbx + 0x48], ecx
test al, al
jne 0x140012952
mov dword [rbx], 0x17
mov r9, qword [rsp + 0x38]
jmp 0x140011fef
test al, 0x20
je 0x14001295e
mov dword [rbx], 0xb
jmp 0x140012948
test al, 0x40
je 0x140012975
lea rax, [0x140016960]
mov qword [r14 + 0x20], rax
mov dword [rbx], 0x1b
jmp 0x140012948
movzx ecx, al
and ecx, 0xf
mov dword [rbx], 0x13
mov dword [rbx + 0x50], ecx
mov edx, dword [rbx + 0x50]
test edx, edx
je 0x140012a1e
jmp 0x140012a06
cmp ecx, 0x18
jg 0x140012d36
je 0x140012c4c
sub ecx, 0x13
je 0x140012984
sub ecx, 1
je 0x140012a24
sub ecx, 1
je 0x140012b40
sub ecx, 1
je 0x140012baa
cmp ecx, 1
jne 0x14001203e
test r11d, r11d
je 0x140012d5b
mov al, byte [rbx + 0x48]
mov byte [r9], al
inc r9
dec r11d
mov qword [rsp + 0x38], r9
mov dword [rsp + 0xa0], r11d
jmp 0x140012c41
test ebp, ebp
je 0x140012d5b
movzx eax, byte [r15]
mov ecx, edi
shl eax, cl
dec ebp
add esi, eax
inc r15
add edi, 8
cmp edi, edx
jb 0x1400129ec
mov ecx, edx
mov eax, 1
shl eax, cl
dec eax
and eax, esi
shr esi, cl
add dword [rbx + 0x48], eax
sub edi, edx
mov dword [rbx], 0x14
mov ecx, dword [rbx + 0x6c]
mov edx, 1
mov r10, qword [rbx + 0x60]
shl edx, cl
dec edx
mov eax, esi
mov ecx, edx
jmp 0x140012a58
test ebp, ebp
je 0x140012d5b
movzx eax, byte [r15]
mov ecx, edi
shl eax, cl
dec ebp
add esi, eax
inc r15
mov ecx, esi
add edi, 8
mov eax, edx
and rcx, rax
mov eax, dword [r10 + rcx*4]
mov ecx, eax
shr ecx, 8
movzx ecx, cl
cmp ecx, edi
ja 0x140012a3a
test al, 0xf0
jne 0x140012af7
mov ecx, eax
mov dword [rsp + 0xa8], eax
shr ecx, 8
mov edx, eax
movzx r9d, cl
movzx ecx, al
shr eax, 0x10
jmp 0x140012abb
test ebp, ebp
je 0x140012d5b
movzx eax, byte [r15]
mov ecx, edi
movzx r9d, byte [rsp + 0xa9]
dec ebp
shl eax, cl
inc r15
add esi, eax
movzx ecx, dl
movzx eax, word [rsp + 0xaa]
add edi, 8
add ecx, r9d
mov r8d, 1
shl r8d, cl
mov ecx, r9d
dec r8d
and r8d, esi
shr r8d, cl
add r8d, eax
mov eax, dword [r10 + r8*4]
mov ecx, eax
shr ecx, 8
movzx r8d, cl
add r8d, r9d
cmp r8d, edi
ja 0x140012a8d
movzx ecx, byte [rsp + 0xa9]
shr esi, cl
sub edi, ecx
mov ecx, eax
shr ecx, 8
movzx ecx, cl
shr esi, cl
sub edi, ecx
test al, 0x40
je 0x140012b22
mov r9, qword [rsp + 0x38]
lea rax, [0x140016980]
mov qword [r14 + 0x20], rax
mov dword [rbx], 0x1b
jmp 0x14001233a
mov ecx, eax
mov dword [rbx], 0x15
shr ecx, 0x10
mov dword [rbx + 0x4c], ecx
movzx ecx, al
and ecx, 0xf
xor r10d, r10d
mov dword [rbx + 0x50], ecx
lea r8d, [r10 + 0x10]
mov edx, dword [rbx + 0x50]
test edx, edx
je 0x140012b7b
jmp 0x140012b63
test ebp, ebp
je 0x140012d5b
movzx eax, byte [r15]
mov ecx, edi
shl eax, cl
dec ebp
add esi, eax
inc r15
add edi, 8
cmp edi, edx
jb 0x140012b49
mov ecx, edx
mov eax, 1
shl eax, cl
dec eax
and eax, esi
shr esi, cl
add dword [rbx + 0x4c], eax
sub edi, edx
mov eax, dword [rbx + 0x30]
sub eax, r11d
add eax, r13d
cmp dword [rbx + 0x4c], eax
jbe 0x140012ba4
mov r9, qword [rsp + 0x38]
lea rax, [0x1400169a0]
mov qword [r14 + 0x20], rax
mov dword [rbx], 0x1b
jmp 0x140011ff5
mov dword [rbx], 0x16
test r11d, r11d
je 0x140012d5b
mov eax, dword [rbx + 0x4c]
mov ecx, r13d
sub ecx, r11d
cmp eax, ecx
jbe 0x140012be9
mov r9, qword [rbx + 0x38]
sub eax, ecx
mov ecx, dword [rbx + 0x34]
cmp eax, ecx
jbe 0x140012bd2
sub eax, ecx
mov ecx, dword [rbx + 0x2c]
mov r8d, dword [rbx + 0x48]
sub ecx, eax
mov edx, ecx
add rdx, r9
mov r9d, r8d
cmp eax, r8d
cmovbe r9d, eax
jmp 0x140012bf8
mov rdx, qword [rsp + 0x38]
mov r8d, dword [rbx + 0x48]
sub rdx, rax
mov r9d, r8d
cmp r9d, r11d
mov ecx, r11d
cmovbe ecx, r9d
mov r9, qword [rsp + 0x38]
sub r11d, ecx
sub r8d, ecx
mov dword [rsp + 0xa0], r11d
sub rdx, r9
mov dword [rbx + 0x48], r8d
mov al, byte [rdx + r9]
mov byte [r9], al
inc r9
add ecx, 0xffffffff
jne 0x140012c1c
lea edx, [rcx + 7]
mov qword [rsp + 0x38], r9
lea r8d, [rcx + 0x10]
cmp dword [rbx + 0x48], r10d
jne 0x140011ffa
mov dword [rbx], 0x12
jmp 0x140011ffa
cmp dword [rbx + 8], r10d
je 0x140012d28
jmp 0x140012c72
test ebp, ebp
je 0x140012d5b
movzx eax, byte [r15]
mov ecx, edi
shl eax, cl
dec ebp
add esi, eax
inc r15
add edi, 8
cmp edi, 0x20
jb 0x140012c58
sub r13d, r11d
add dword [r14 + 0x1c], r13d
add dword [rbx + 0x1c], r13d
test r13d, r13d
je 0x140012cb5
mov ecx, dword [rbx + 0x18]
mov rdx, r9
mov eax, r13d
mov r8d, r13d
sub rdx, rax
call fcn.140014b84
mov r11d, dword [rsp + 0xa0]
xor r10d, r10d
mov dword [rbx + 0x18], eax
mov dword [r14 + 0x4c], eax
lea edx, [r10 + 7]
lea r8d, [r10 + 0x10]
mov r9d, 0xff00
mov dword [rsp + 0x30], r11d
mov ecx, esi
mov eax, esi
shl eax, 0x10
and ecx, r9d
add ecx, eax
mov r13d, r11d
shl ecx, 8
mov eax, esi
shr eax, 8
and eax, r9d
add ecx, eax
mov eax, esi
shr eax, 0x18
add ecx, eax
cmp ecx, dword [rbx + 0x18]
je 0x140012d22
lea rax, [0x1400169c0]
mov qword [r14 + 0x20], rax
mov dword [rbx], 0x1b
mov r9, qword [rsp + 0x38]
jmp 0x140011ffa
mov qword [r14 + 0x10], r9
mov eax, 2
mov dword [r14 + 0x18], r11d
mov qword [r14], r15
mov dword [r14 + 8], ebp
mov dword [rbx + 0x40], esi
mov dword [rbx + 0x44], edi
jmp 0x140012043
mov esi, r10d
mov edi, r10d
mov dword [rbx], 0x1a
mov r12d, 1
jmp 0x140012d63
sub ecx, 0x1a
je 0x140012d2e
sub ecx, 1
je 0x140012d53
cmp ecx, 1
jne 0x14001203e
mov eax, 0xfffffffc
jmp 0x140012043
mov r12d, 0xfffffffd
jmp 0x140012d63
mov r12d, dword [rsp + 0x90]
mov rcx, qword [rsp + 0x38]
mov qword [r14 + 0x10], rcx
mov dword [r14 + 0x18], r11d
mov qword [r14], r15
mov dword [r14 + 8], ebp
cmp dword [rbx + 0x2c], 0
mov dword [rbx + 0x40], esi
mov dword [rbx + 0x44], edi
jne 0x140012d8e
cmp dword [rbx], 0x18
jge 0x140012da5
cmp r13d, dword [r14 + 0x18]
je 0x140012da5
mov edx, r13d
mov rcx, r14
call fcn.140012fe0
test eax, eax
je 0x140012da5
mov dword [rbx], 0x1c
jmp 0x140012d49
sub r13d, dword [r14 + 0x18]
add dword [r14 + 0x1c], r13d
mov edi, dword [rsp + 0x34]
sub edi, dword [r14 + 8]
add dword [r14 + 0xc], edi
add dword [rbx + 0x1c], r13d
cmp dword [rbx + 8], 0
je 0x140012de4
test r13d, r13d
je 0x140012de4
mov rdx, qword [r14 + 0x10]
mov r8d, r13d
mov ecx, dword [rbx + 0x18]
mov eax, r13d
sub rdx, rax
call fcn.140014b84
mov dword [rbx + 0x18], eax
mov dword [r14 + 0x4c], eax
mov eax, dword [rbx + 4]
mov edx, 0x80
neg eax
sbb ecx, ecx
xor eax, eax
and ecx, 0x40
cmp dword [rbx], 0xb
cmove eax, edx
add ecx, eax
add ecx, dword [rbx + 0x44]
mov dword [r14 + 0x48], ecx
test edi, edi
jne 0x140012e0d
test r13d, r13d
je 0x140012e17
cmp dword [rsp + 0x98], 4
jne 0x140012e23
test r12d, r12d
mov eax, 0xfffffffb
cmove r12d, eax
mov eax, r12d
jmp 0x140012043