Function at 0x180166520
Capabilities:
Check for software breakpoints

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r14
sub rsp, 0x170
mov rax, qword [0x18028ab00]
xor rax, rsp
mov qword [rsp + 0x160], rax
xor ebx, ebx
mov rsi, r8
mov rdi, rcx
mov ebp, ebx
cmp edx, 0xd2
jg 0x180166e00
je 0x180166def
lea eax, [rdx - 3]
cmp eax, 0xcc
ja case.0x180168723.40296
lea r8, [0x180000000]
cdqe
movzx eax, byte [r8 + rax + 0x168948]
mov ecx, dword [r8 + rax*4 + 0x1687fc]
add rcx, r8
jmp rcx
mov eax, dword [rsi]
cmp eax, 0xffffffff
jl 0x1801686d3
mov dword [rdi + 0x6c8], eax
jmp case.0x1801672b6.10028
mov eax, dword [rsi]
mov dword [rdi + 0xa2c], eax
jmp case.0x1801672b6.10028
cmp dword [rsi], ebx
setne al
mov byte [rdi + 0xa4f], al
jmp case.0x1801672b6.10028
cmp dword [rsi], ebx
setne al
mov byte [rdi + 0xa50], al
jmp case.0x1801672b6.10028
cmp dword [rsi], ebx
setne al
mov byte [rdi + 0xa4e], al
jmp case.0x1801672b6.10028
cmp dword [rsi], ebx
setne al
mov byte [rdi + 0xa4a], al
jmp case.0x1801672b6.10028
mov edx, dword [rsi]
test edx, edx
mov ecx, dword [rdi + 0xab4]
setne al
mov byte [rdi + 0xa44], al
mov eax, ecx
and eax, 0xffffffef
or ecx, 0x10
test edx, edx
cmove ecx, eax
mov dword [rdi + 0xab4], ecx
jmp case.0x1801672b6.10028
mov ecx, dword [rsi]
test ecx, ecx
setne al
mov byte [rdi + 0xa4d], al
test ecx, ecx
je 0x180166634
mov byte [rdi + 0x531], 5
jmp case.0x1801672b6.10028
cmp byte [rdi + 0x531], 5
jne case.0x1801672b6.10028
mov byte [rdi + 0x531], bl
jmp case.0x1801672b6.10028
cmp dword [rsi], ebx
setne al
mov byte [rdi + 0xa45], al
jmp case.0x1801672b6.10028
cmp dword [rsi], ebx
je 0x180166673
mov al, 4
mov byte [rdi + 0xa4d], bl
mov byte [rdi + 0x531], al
jmp case.0x1801672b6.10028
xor al, al
mov byte [rdi + 0x531], al
jmp case.0x1801672b6.10028
cmp dword [rsi], ebx
setne al
mov byte [rdi + 0xa39], al
jmp case.0x1801672b6.10028
mov eax, dword [rsi]
cmp eax, 0x20c49b
ja 0x1801686d3
imul eax, eax, 0x3e8
mov dword [rdi + 0x30c], eax
jmp case.0x1801672b6.10028
mov ecx, dword [rsi]
lea eax, [rcx - 8]
cmp eax, 0xffb0
ja 0x1801686d3
mov dword [rdi + 0x318], ecx
jmp case.0x1801672b6.10028
mov eax, dword [rsi]
cmp eax, 2
ja 0x1801686d3
mov byte [rdi + 0x719], al
jmp case.0x1801672b6.10028
cmp dword [rsi], ebx
setne al
mov byte [rdi + 0xa3b], al
jmp case.0x1801672b6.10028
mov eax, dword [rsi]
cmp eax, 3
ja 0x1801686d3
mov byte [rdi + 0x530], al
jmp case.0x1801672b6.10028
movsxd rax, dword [rsi]
mov qword [rdi + 0x528], rax
jmp case.0x1801672b6.10028
movsxd rsi, dword [rsi]
cmp rsi, 0xffffffffffffffff
jl 0x1801686d3
cmp qword [rdi + 0x238], rsi
jge 0x18016674e
mov rcx, qword [rdi + 0x938]
cmp qword [rdi + 0x228], rcx
jne 0x18016674e
call qword [fcn.1801d5f54]
mov qword [rdi + 0x938], rbx
mov qword [rdi + 0x228], rbx
mov qword [rdi + 0x238], rsi
jmp case.0x1801672b6.10028
cmp dword [rsi], ebx
setne al
mov byte [rdi + 0xa4c], al
jmp case.0x1801672b6.10028
cmp dword [rsi], ebx
setne al
mov byte [rdi + 0xa48], al
jmp case.0x1801672b6.10028
cmp dword [rsi], ebx
setne al
mov byte [rdi + 0xa47], al
jmp case.0x1801672b6.10028
cmp dword [rsi], ebx
setne al
mov byte [rdi + 0xa49], al
jmp case.0x1801672b6.10028
mov eax, dword [rsi]
cmp eax, 0xffffffff
jl 0x1801686d3
mov dword [rdi + 0x224], eax
jmp case.0x1801672b6.10028
mov eax, dword [rsi]
test eax, eax
js 0x1801686d3
and al, 7
mov byte [rdi + 0xa18], al
jmp case.0x1801672b6.10028
cmp dword [rsi], ebx
je 0x180166673
mov al, 1
mov byte [rdi + 0xa4d], bl
mov byte [rdi + 0x531], al
jmp case.0x1801672b6.10028
cmp dword [rsi], ebx
setne al
mov byte [rdi + 0xa36], al
jmp case.0x1801672b6.10028
cmp dword [rsi], ebx
je case.0x1801672b6.10028
mov byte [rdi + 0x531], bl
mov byte [rdi + 0xa4d], bl
jmp case.0x1801672b6.10028
mov edx, dword [rsi]
mov ecx, edx
test edx, edx
je 0x18016682f
sub ecx, 1
je 0x18016682f
cmp ecx, 1
je 0x18016682f
test edx, edx
js 0x1801686d3
mov eax, 1
jmp 0x1801687db
mov byte [rdi + 0x532], dl
jmp case.0x1801672b6.10028
mov ecx, dword [rsi]
test ecx, ecx
jne 0x18016684b
mov dword [rdi + 0x21c], ebx
jmp case.0x1801672b6.10028
mov eax, ecx
shr eax, 4
and al, 1
mov byte [rdi + 0xd06], al
test cl, 0x10
je 0x180166863
and ecx, 0xffffffef
or ecx, 2
mov eax, ebx
inc ebx
bt ecx, eax
jb 0x18016687b
cmp ebx, 0x1f
jl 0x180166863
mov eax, 4
jmp 0x1801687db
mov dword [rdi + 0x21c], ecx
jmp case.0x1801672b6.10028
cmp dword [rsi], ebx
setne al
mov byte [rdi + 0xa3a], al
jmp case.0x1801672b6.10028
mov eax, dword [rsi]
cmp eax, 0xffff
ja 0x1801686d3
mov word [rdi + 0x6b0], ax
jmp case.0x1801672b6.10028
mov ecx, dword [rsi]
test ecx, ecx
jne 0x1801668c0
mov dword [rdi + 0x220], ebx
jmp case.0x1801672b6.10028
mov eax, ecx
shr eax, 4
and al, 1
mov byte [rdi + 0xd16], al
test cl, 0x10
je 0x1801668e0
and ecx, 0xffffffef
or ecx, 2
nop dword [rax + rax]
mov eax, ebx
inc ebx
bt ecx, eax
jb 0x1801668f8
cmp ebx, 0x1f
jl 0x1801668e0
mov eax, 4
jmp 0x1801687db
mov dword [rdi + 0x220], ecx
jmp case.0x1801672b6.10028
mov eax, dword [rsi]
cmp eax, 7
ja 0x1801686d3
mov byte [rdi + 0x6b2], al
jmp case.0x1801672b6.10028
mov ecx, dword [rsi]
test ecx, ecx
je 0x180166933
cmp ecx, 1
jne 0x180166a02
mov byte [rdi + 0xa56], cl
jmp case.0x1801672b6.10028
mov byte [rdi + 0xa56], bl
jmp case.0x1801672b6.10028
cmp dword [rsi], ebx
setne al
mov byte [rdi + 0xa57], al
jmp case.0x1801672b6.10028
cmp dword [rsi], ebx
setne al
mov byte [rdi + 0xa3d], al
jmp case.0x1801672b6.10028
cmp dword [rsi], ebx
setne al
mov byte [rdi + 0xa3c], al
jmp case.0x1801672b6.10028
mov eax, dword [rsi]
cmp eax, 3
ja 0x1801686d3
mov byte [rdi + 0x6f8], al
jmp case.0x1801672b6.10028
cmp dword [rsi], ebx
setne al
mov byte [rdi + 0xa40], al
jmp case.0x1801672b6.10028
cmp dword [rsi], ebx
setne al
mov byte [rdi + 0xa3f], al
jmp case.0x1801672b6.10028
cmp dword [rsi], ebx
setne al
mov byte [rdi + 0xa41], al
jmp case.0x1801672b6.10028
mov eax, dword [rsi]
cmp eax, 2
ja 0x1801686d3
mov byte [rdi + 0x6fa], al
jmp case.0x1801672b6.10028
cmp dword [rsi], ebx
setne al
mov byte [rdi + 0xa42], al
jmp case.0x1801672b6.10028
mov eax, dword [rsi]
cmp eax, 2
ja 0x1801686d3
mov byte [rdi + 0x6f9], al
jmp case.0x1801672b6.10028
mov eax, dword [rsi]
cmp eax, 2
ja 0x180166a02
mov byte [rdi + 0x718], al
jmp case.0x1801672b6.10028
mov ebp, 0x2b
jmp case.0x1801672b6.10028
movsxd rax, dword [rsi]
cmp eax, 0xffffffff
jl 0x1801686d3
mov qword [rdi + 0x320], rax
jmp case.0x1801672b6.10028
mov eax, dword [rsi]
test eax, eax
js 0x1801686d3
mov dword [rdi + 0x328], eax
jmp case.0x1801672b6.10028
mov eax, dword [rsi]
test eax, eax
js 0x1801686d3
mov dword [rdi + 0x32c], eax
jmp case.0x1801672b6.10028
mov eax, dword [rsi]
cmp eax, 0xffff
ja 0x1801686d3
mov word [rdi + 0x218], ax
jmp case.0x1801672b6.10028
mov eax, dword [rsi]
cmp eax, 0x20c49b
ja 0x1801686d3
imul eax, eax, 0x3e8
mov dword [rdi + 0x300], eax
jmp case.0x1801672b6.10028
mov eax, dword [rsi]
mov dword [rdi + 0x300], eax
jmp case.0x1801672b6.10028
mov eax, dword [rsi]
cmp eax, 0x20c49b
ja 0x1801686d3
imul eax, eax, 0x3e8
mov dword [rdi + 0x304], eax
jmp case.0x1801672b6.10028
mov eax, dword [rsi]
mov dword [rdi + 0x304], eax
jmp case.0x1801672b6.10028
movsxd rax, dword [rsi]
cmp eax, 0xffffffff
jl 0x1801686d3
mov qword [rdi + 0x340], rax
jmp case.0x1801672b6.10028
mov rcx, qword [rdi + 0x870]
call qword [fcn.1801d5f54]
mov rcx, rdi
mov qword [rdi + 0x870], rbx
call fcn.18016ffe0
mov ebp, eax
jmp case.0x1801672b6.10028
cmp dword [rsi], ebx
setne al
mov byte [rdi + 0xa37], al
jmp case.0x1801672b6.10028
mov ecx, dword [rsi]
cmp ecx, 0xffff
ja 0x1801686d3
call fcn.18016cd70
mov word [rdi + 0x240], ax
jmp case.0x1801672b6.10028
mov ecx, dword [rsi]
cmp ecx, 0xffff
ja 0x1801686d3
call fcn.18016cd70
mov word [rdi + 0x242], ax
jmp case.0x1801672b6.10028
cmp dword [rsi], ebx
mov rcx, rdi
setne al
xor edx, edx
mov byte [rdi + 0x5a1], al
call fcn.18016f3e0
jmp case.0x1801672b6.10028
test byte [rsi], 3
mov rcx, rdi
setne al
xor edx, edx
mov byte [rdi + 0x5a2], al
call fcn.18016f3e0
jmp case.0x1801672b6.10028
mov edx, 2
mov rcx, rdi
call fcn.18016fff0
test al, al
je case.0x180166e3e.244
cmp dword [rsi], ebx
setne al
mov byte [rdi + 0x5e8], al
jmp case.0x1801672b6.10028
mov ecx, dword [rsi]
mov eax, 0xa00000
cmp ecx, eax
jg 0x180166bcc
cmp ecx, 1
jge 0x180166bc0
mov eax, 0x4000
mov dword [rdi + 0x6cc], eax
jmp case.0x1801672b6.10028
mov edx, 0x400
mov eax, ecx
cmp ecx, edx
cmovl eax, edx
mov dword [rdi + 0x6cc], eax
jmp case.0x1801672b6.10028
cmp dword [rsi], ebx
setne al
mov byte [rdi + 0xa51], al
jmp case.0x1801672b6.10028
movsxd rax, dword [rsi]
test eax, eax
js 0x1801686d3
mov qword [rdi + 0x6f0], rax
jmp case.0x1801672b6.10028
mov eax, dword [rsi]
cmp eax, 3
ja 0x1801686d3
mov byte [rdi + 0xa30], al
jmp case.0x1801672b6.10028
mov eax, dword [rsi]
cmp eax, 2
ja 0x1801686d3
mov byte [rdi + 0x6e8], al
jmp case.0x1801672b6.10028
cmp dword [rsi], ebx
setne al
mov byte [rdi + 0xa52], al
jmp case.0x1801672b6.10028
cmp dword [rsi], ebx
setne al
mov byte [rdi + 0xa53], al
jmp case.0x1801672b6.10028
mov eax, dword [rsi]
cmp eax, 2
jg 0x1801686d3
mov byte [rdi + 0xa31], al
jmp case.0x1801672b6.10028
cmp dword [rsi], ebx
setne al
mov byte [rdi + 0x5a4], al
mov byte [rdi + 0x65c], al
jmp case.0x1801672b6.10028
cmp dword [rsi], ebx
sete al
mov byte [rdi + 0xa54], al
jmp case.0x1801672b6.10028
cmp dword [rsi], ebx
sete al
mov byte [rdi + 0xa55], al
jmp case.0x1801672b6.10028
mov eax, dword [rsi]
cmp eax, 0x1ff
ja 0x1801686d3
mov dword [rdi + 0x71c], eax
jmp case.0x1801672b6.10028
mov eax, dword [rsi]
mov dword [rdi + 0x980], eax
jmp case.0x1801672b6.10028
mov eax, dword [rsi]
mov dword [rdi + 0x984], eax
jmp case.0x1801672b6.10028
mov eax, dword [rsi]
mov dword [rdi + 0x988], eax
jmp case.0x1801672b6.10028
mov eax, dword [rsi]
dec eax
cmp eax, 0xa
ja case.default.0x180166cef
cdqe
mov ecx, dword [r8 + rax*4 + 0x168a18]
add rcx, r8
jmp rcx
mov r14d, 1
mov dword [rdi + 0x998], r14d
jmp case.0x1801672b6.10028
mov r14d, 2
mov dword [rdi + 0x998], r14d
jmp case.0x1801672b6.10028
mov r14d, 3
mov dword [rdi + 0x998], r14d
jmp case.0x1801672b6.10028
mov r14d, 4
mov dword [rdi + 0x998], r14d
jmp case.0x1801672b6.10028
mov r14d, 5
mov dword [rdi + 0x998], r14d
jmp case.0x1801672b6.10028
mov r14d, 6
mov dword [rdi + 0x998], r14d
jmp case.0x1801672b6.10028
mov r14d, 7
mov dword [rdi + 0x998], r14d
jmp case.0x1801672b6.10028
mov r14d, 8
mov dword [rdi + 0x998], r14d
jmp case.0x1801672b6.10028
mov r14d, 9
mov dword [rdi + 0x998], r14d
jmp case.0x1801672b6.10028
mov r14d, 0xa
mov dword [rdi + 0x998], r14d
jmp case.0x1801672b6.10028
mov r14d, ntohs
mov dword [rdi + 0x998], r14d
jmp case.0x1801672b6.10028
mov r14d, ebx
mov dword [rdi + 0x998], ebx
jmp case.0x1801672b6.10028
mov eax, dword [rsi]
mov dword [rdi + 0x1098], eax
jmp case.0x1801672b6.10028
mov eax, dword [rsi]
mov dword [rdi + 0x109c], eax
jmp case.0x1801672b6.10028
cmp dword [rsi], ebx
setne al
mov byte [rdi + 0xa43], al
jmp case.0x1801672b6.10028
movzx eax, byte [r8]
and al, 3
mov byte [rcx + 0x9c8], al
jmp case.0x1801672b6.10028
cmp edx, 0x2711
jg 0x180167274
je 0x180167265
lea eax, [rdx - 0xd4]
cmp eax, 0x70
ja case.0x180168723.40296
lea r8, [0x180000000]
cdqe
movzx eax, byte [r8 + rax + 0x168af4]
mov ecx, dword [r8 + rax*4 + 0x168a44]
add rcx, r8
jmp rcx
mov eax, dword [rsi]
cmp eax, 0xffffffff
jl 0x1801686d3
mov dword [rdi + 0x6c0], eax
jmp case.0x1801672b6.10028
cmp dword [rsi], ebx
setne al
mov byte [rdi + 0xa46], al
jmp case.0x1801672b6.10028
mov eax, dword [rsi]
test eax, eax
js 0x1801686d3
mov dword [rdi + 0x30c], eax
jmp case.0x1801672b6.10028
cmp dword [rsi], ebx
setne al
mov byte [rdi + 0xa34], al
jmp case.0x1801672b6.10028
lea r8, [rdi + 0x538]
cmp edx, 0x20
je 0x180166e9e
lea r8, [rdi + 0x5f0]
mov eax, dword [rsi]
movzx ecx, ax
and eax, 0xffff0000
cmp ecx, 2
je 0x1801686d3
cmp ecx, 3
je 0x1801686d3
cmp ecx, 8
jae 0x1801686d3
cmp eax, 0x7ffff
ja 0x1801686d3
mov byte [r8 + 0x68], cl
mov dword [r8 + 0x64], eax
jmp case.0x1801672b6.10028
movzx eax, byte [rsi]
and al, 1
mov byte [rdi + 0xa35], al
jmp case.0x1801672b6.10028
mov eax, dword [rsi]
test eax, eax
js 0x1801686d3
mov dword [rdi + 0x9d4], eax
jmp case.0x1801672b6.10028
mov eax, dword [rsi]
cmp eax, 1
jg 0x1801686d3
test eax, eax
setne al
mov byte [rdi + 0xa67], al
jmp case.0x1801672b6.10028
movzx eax, byte [rsi]
and al, 1
mov byte [rdi + 0xa32], al
jmp case.0x1801672b6.10028
movzx eax, byte [rsi]
mov byte [rdi + 0x6b3], al
and al, 0xfa
neg al
sbb ebp, ebp
and ebp, 4
jmp case.0x1801672b6.10028
mov eax, dword [rsi]
mov dword [rdi + 0x6fc], eax
jmp case.0x1801672b6.10028
cmp dword [rsi], ebx
setne al
mov byte [rdi + 0xa60], al
jmp case.0x1801672b6.10028
cmp dword [rsi], ebx
setne al
mov byte [rdi + 0xa64], al
jmp case.0x1801672b6.10028
cmp dword [rsi], ebx
mov dl, 1
mov rcx, rdi
setne al
mov byte [rdi + 0x659], al
call fcn.18016f3e0
jmp case.0x1801672b6.10028
test byte [rsi], 3
setne al
mov byte [rdi + 0xa65], al
jmp case.0x1801672b6.10028
test byte [rsi], 3
mov dl, 1
mov rcx, rdi
setne al
mov byte [rdi + 0x65a], al
call fcn.18016f3e0
jmp case.0x1801672b6.10028
call fcn.18016f030
test al, al
jne 0x180166fc8
mov ebp, 4
jmp case.0x1801672b6.10028
cmp dword [rsi], ebx
mov rcx, rdi
setne al
xor edx, edx
mov byte [rdi + 0x5a3], al
call fcn.18016f3e0
jmp case.0x1801672b6.10028
call fcn.18016f030
test al, al
je case.0x180166e3e.244
cmp dword [rsi], ebx
setne al
mov byte [rdi + 0xa66], al
jmp case.0x1801672b6.10028
mov rcx, rdi
call fcn.18016f770
test al, al
je case.0x180166e3e.244
cmp dword [rsi], ebx
setne al
mov byte [rdi + 0x5e9], al
jmp case.0x1801672b6.10028
mov edx, dword [rsi]
mov ecx, 0x200000
cmp edx, ecx
jg 0x18016702e
mov eax, 0x4000
mov ecx, edx
cmp edx, eax
cmovl ecx, eax
mov dword [rdi + 0x6d0], ecx
jmp case.0x1801672b6.10028
mov ecx, dword [rsi]
movzx eax, cl
and al, 1
mov byte [rdi + 0x598], cl
mov byte [rdi + 0x5ea], al
mov eax, ecx
shr eax, 1
and al, 1
mov byte [rdi + 0x5eb], al
mov eax, ecx
shr eax, 2
and al, 1
mov byte [rdi + 0x5ec], al
mov eax, ecx
shr eax, 3
and al, 1
mov byte [rdi + 0x5ed], al
mov eax, ecx
shr eax, 4
and al, 1
shr ecx, 5
and cl, 1
mov byte [rdi + 0x5ee], al
mov byte [rdi + 0x5ef], cl
jmp case.0x1801672b6.10028
mov ecx, dword [rsi]
movzx eax, cl
and al, 1
mov byte [rdi + 0x650], cl
mov byte [rdi + 0x6a2], al
mov eax, ecx
shr eax, 1
and al, 1
mov byte [rdi + 0x6a3], al
mov eax, ecx
shr eax, 2
and al, 1
mov byte [rdi + 0x6a4], al
mov eax, ecx
shr eax, 3
and al, 1
mov byte [rdi + 0x6a5], al
mov eax, ecx
shr eax, 4
and al, 1
shr ecx, 5
and cl, 1
mov byte [rdi + 0x6a6], al
mov byte [rdi + 0x6a7], cl
jmp case.0x1801672b6.10028
cmp dword [rsi], ebx
setne al
mov byte [rdi + 0xa28], al
jmp case.0x1801672b6.10028
cmp dword [rsi], ebx
setne al
mov byte [rdi + 0xa58], al
jmp case.0x1801672b6.10028
cmp dword [rsi], ebx
setne al
mov byte [rdi + 0xa59], al
jmp case.0x1801672b6.10028
mov eax, dword [rsi]
test eax, eax
js 0x1801686d3
mov dword [rdi + 0x9cc], eax
jmp case.0x1801672b6.10028
mov eax, dword [rsi]
test eax, eax
js 0x1801686d3
mov dword [rdi + 0x9d0], eax
jmp case.0x1801672b6.10028
cmp dword [rsi], ebx
setne al
mov byte [rdi + 0xa5b], al
jmp case.0x1801672b6.10028
cmp dword [rsi], ebx
setne al
mov byte [rdi + 0xa5c], al
jmp case.0x1801672b6.10028
cmp dword [rsi], ebx
setne al
mov byte [rdi + 0xa5d], al
jmp case.0x1801672b6.10028
cmp dword [rsi], ebx
setne al
mov byte [rdi + 0xa5e], al
jmp case.0x1801672b6.10028
mov eax, dword [rsi]
mov dword [rdi + 0x308], eax
jmp case.0x1801672b6.10028
cmp dword [rsi], ebx
setne al
mov byte [rdi + 0xa5f], al
jmp case.0x1801672b6.10028
cmp dword [rsi], ebx
setne al
mov byte [rdi + 0xa62], al
jmp case.0x1801672b6.10028
mov eax, dword [rsi]
test eax, eax
js 0x1801686d3
mov dword [rdi + 0x9e8], eax
jmp case.0x1801672b6.10028
mov eax, dword [rsi]
test eax, eax
js 0x1801686d3
mov dword [rdi + 0x310], eax
jmp case.0x1801672b6.10028
mov eax, dword [rsi]
test eax, eax
js 0x1801686d3
mov dword [rdi + 0x314], eax
jmp case.0x1801672b6.10028
test byte [rsi], 1
je 0x180168379
cmp qword [rdi + 0xa70], rbx
jne case.0x1801672b6.10028
call fcn.180179890
mov qword [rdi + 0xa70], rax
test rax, rax
je 0x18016750c
jmp case.0x1801672b6.10028
mov rax, qword [rdi + 0xa78]
test rax, rax
jne 0x18016723e
call fcn.1801784f0
mov qword [rdi + 0xa78], rax
test rax, rax
je 0x18016750c
mov edx, dword [rsi]
test edx, edx
je 0x1801686d3
mov rcx, rax
call fcn.1801784e0
jmp 0x1801681e9
cmp dword [rsi], ebx
setne al
mov byte [rdi + 0xa38], al
jmp case.0x1801672b6.10028
mov rax, qword [r8]
mov qword [rcx + 0x200], rax
jmp case.0x1801672b6.10028
cmp edx, 0x27f4
jg 0x180167ef6
je 0x180167ee7
add edx, 0xffffd8ee
cmp edx, 0xde
ja case.0x180168723.40296
lea r8, [0x180000000]
movsxd rax, edx
movzx eax, byte [r8 + rax + 0x168c88]
mov ecx, dword [r8 + rax*4 + 0x168b68]
add rcx, r8
jmp rcx
mov rdx, qword [rsi]
lea rcx, [rdi + 0x760]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
lea rcx, [rdi + 0x838]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov rax, qword [rsi]
test rax, rax
je 0x18016732b
mov rdx, qword [rdi + 0x238]
cmp rdx, 0xffffffffffffffff
je 0x18016732b
test rdx, rdx
js 0x18016730e
mov rcx, rax
call fcn.18016d650
mov rbx, rax
test rax, rax
jne 0x180167315
mov ebp, 0x1b
jmp 0x18016733c
mov rcx, qword [rdi + 0x938]
call qword [fcn.1801d5f54]
mov qword [rdi + 0x938], rbx
jmp 0x18016733c
lea rcx, [rdi + 0x938]
mov rdx, rax
call fcn.180166480
mov ebp, eax
mov rax, qword [rdi + 0x938]
mov qword [rdi + 0x228], rax
mov byte [rdi + 0x531], 1
jmp case.0x1801672b6.10028
mov rax, qword [rsi]
mov rcx, qword [rdi + 0x938]
mov qword [rdi + 0x228], rax
call qword [fcn.1801d5f54]
mov qword [rdi + 0x938], rbx
mov byte [rdi + 0x531], 1
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
test rdx, rdx
je 0x1801673f9
cmp byte [rdx], bl
jne 0x1801673f9
mov edx, 0x100
lea rcx, [rsp + 0x60]
call fcn.180177a00
mov rcx, qword [rdi + 0x818]
call qword [fcn.1801d5f54]
lea rax, [rsp + 0x60]
mov qword [rdi + 0x818], rbx
mov rdx, 0xffffffffffffffff
nop dword [rax + rax]
inc rdx
cmp byte [rax + rdx], bl
jne 0x1801673c0
cmp rdx, 0x7a1200
ja 0x180166a02
lea rcx, [rsp + 0x60]
call qword [case.0x1801748f2.1]
mov ebp, 0x1b
mov qword [rdi + 0x818], rax
test rax, rax
cmove ebx, ebp
mov ebp, ebx
jmp case.0x1801672b6.10028
lea rcx, [rdi + 0x818]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov rax, qword [rsi]
mov qword [rdi + 0x350], rax
mov byte [rdi + 0x531], 2
mov rcx, qword [rdi + 0x1148]
mov byte [rdi + 0xa4d], bl
call fcn.180164180
mov rcx, qword [rdi + 0x1148]
call qword [fcn.1801d5f54]
mov qword [rdi + 0x1148], rbx
mov qword [rdi + 0x1140], rbx
jmp case.0x1801672b6.10028
cmp byte [rdi + 0x129b], bl
je 0x180167471
mov rcx, qword [rdi + 0x1130]
call qword [fcn.1801d5f54]
mov qword [rdi + 0x1130], rbx
mov byte [rdi + 0x129b], bl
mov rdx, qword [rsi]
lea rcx, [rdi + 0x858]
call fcn.180166480
mov ebp, eax
mov rax, qword [rdi + 0x858]
mov qword [rdi + 0x1130], rax
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
lea rcx, [rdi + 0x868]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
lea rcx, [rdi + 0x7f0]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov rax, qword [rsi]
test rax, rax
je 0x180167522
mov rdx, 0xffffffffffffffff
inc rdx
cmp byte [rax + rdx], bl
jne 0x1801674d0
cmp rdx, 0x7a1200
ja 0x1801686d3
mov rcx, qword [rdi + 0x1208]
mov rdx, rax
call fcn.1801661d0
test rax, rax
jne 0x180167516
mov rcx, qword [rdi + 0x1208]
call fcn.180166290
mov qword [rdi + 0x1208], rbx
mov eax, 0x1b
jmp 0x1801687db
mov qword [rdi + 0x1208], rax
jmp case.0x1801672b6.10028
mov rcx, qword [rdi + 0x1208]
call fcn.180166290
mov rax, qword [rdi + 0xe8]
mov qword [rdi + 0x1208], rbx
test rax, rax
je 0x18016754a
cmp qword [rax + 0xb8], rbx
jne 0x180167562
mov rcx, qword [rdi + 0xa68]
call fcn.180171500
mov rcx, qword [rdi + 0xa68]
call fcn.180171440
mov qword [rdi + 0xa68], rbx
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
lea rcx, [rdi + 0x7f8]
call fcn.180166480
mov ebp, eax
test eax, eax
jne case.0x1801672b6.10028
movzx r9d, byte [rdi + 0xa36]
xor edx, edx
mov r8, qword [rdi + 0xa68]
mov rcx, rdi
call fcn.180171b70
mov ecx, ebp
mov qword [rdi + 0xa68], rax
mov ebp, 0x1b
test rax, rax
cmove ecx, ebp
mov ebp, ecx
jmp case.0x1801672b6.10028
mov rsi, qword [rsi]
test rsi, rsi
je case.0x1801672b6.10028
lea rdx, [0x1802141c8]
mov rcx, rsi
call fcn.18016b600
test eax, eax
je 0x180167608
mov edx, 2
mov rcx, rdi
mov r8d, edx
call fcn.1801783a0
mov rcx, qword [rdi + 0xa68]
call fcn.180171500
mov edx, 2
mov rcx, rdi
call fcn.1801783e0
jmp case.0x1801672b6.10028
lea rdx, str.SESS
mov rcx, rsi
call fcn.18016b600
test eax, eax
je 0x180167649
mov edx, 2
mov rcx, rdi
mov r8d, edx
call fcn.1801783a0
mov rcx, qword [rdi + 0xa68]
call fcn.1801715c0
mov edx, 2
mov rcx, rdi
call fcn.1801783e0
jmp case.0x1801672b6.10028
lea rdx, str.FLUSH
mov rcx, rsi
call fcn.18016b600
test eax, eax
je 0x18016766b
xor edx, edx
mov rcx, rdi
call fcn.1801720a0
jmp case.0x1801672b6.10028
lea rdx, str.RELOAD
mov rcx, rsi
call fcn.18016b600
test eax, eax
je 0x18016768b
mov rcx, rdi
call fcn.180171e40
jmp case.0x1801672b6.10028
cmp qword [rdi + 0xa68], rbx
jne 0x1801676ab
mov r9b, 1
xor r8d, r8d
xor edx, edx
mov rcx, rdi
call fcn.180171b70
mov qword [rdi + 0xa68], rax
mov rdx, 0xffffffffffffffff
inc rdx
cmp byte [rsi + rdx], bl
jne 0x1801676b2
cmp rdx, 0x7a1200
ja 0x1801686d3
mov rcx, rsi
call qword [case.0x1801748f2.1]
mov rsi, rax
test rax, rax
je 0x18016775a
cmp qword [rdi + 0xa68], rbx
je 0x18016775a
mov edx, 2
mov rcx, rdi
mov r8d, edx
call fcn.1801783a0
mov r8d, ntohs
lea rdx, str.Set_Cookie:
mov rcx, rsi
call fcn.18016b670
lea rcx, [rsi + 0xb]
test eax, eax
jne 0x180167715
mov rcx, rsi
mov rdx, qword [rdi + 0xa68]
setne r8b
mov byte [rsp + 0x38], 1
xor r9d, r9d
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rcx
mov rcx, rdi
call fcn.180170630
mov edx, 2
mov rcx, rdi
call fcn.1801783e0
mov rcx, rsi
call qword [fcn.1801d5f54]
jmp case.0x1801672b6.10028
mov rcx, rsi
mov ebp, 0x1b
call qword [fcn.1801d5f54]
jmp case.0x1801672b6.10028
mov rax, qword [rsi]
mov qword [rdi + 0x6e0], rax
jmp case.0x1801672b6.10028
mov rax, qword [rsi]
mov qword [rdi + 0x348], rax
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
lea rcx, [rdi + 0x800]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
lea rcx, [rdi + 0x840]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov rax, qword [rsi]
mov qword [rdi + 0x210], rax
jmp case.0x1801672b6.10028
mov rax, qword [rsi]
mov qword [rdi + 0x1f8], rax
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
lea rcx, [rdi + 0x830]
call fcn.180166480
cmp qword [rdi + 0x830], rbx
mov ebp, eax
setne al
mov byte [rdi + 0xa3e], al
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
lea rcx, [rdi + 0x820]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
lea rcx, [rdi + 0x828]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov rax, qword [rsi]
mov qword [rdi + 0x708], rax
jmp case.0x1801672b6.10028
mov rax, qword [rsi]
mov qword [rdi + 0x710], rax
jmp case.0x1801672b6.10028
mov rax, qword [rsi]
mov qword [rdi + 0x700], rax
jmp case.0x1801672b6.10028
mov rax, qword [rsi]
mov qword [rdi + 0x208], rax
jmp case.0x1801672b6.10028
cmp byte [rdi + 0x129a], bl
je 0x180167885
mov rcx, qword [rdi + 0x1128]
call qword [fcn.1801d5f54]
mov qword [rdi + 0x1128], rbx
mov byte [rdi + 0x129a], bl
mov rdx, qword [rsi]
lea rcx, [rdi + 0x860]
call fcn.180166480
mov ebp, eax
mov rax, qword [rdi + 0x860]
mov qword [rdi + 0x1128], rax
jmp case.0x1801672b6.10028
mov rcx, qword [rsi]
lea r8, [rdi + 0x880]
lea rdx, [rdi + 0x878]
call fcn.1801690f0
mov ebp, eax
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
lea rcx, [rdi + 0x878]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
lea rcx, [rdi + 0x880]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
lea rcx, [rdi + 0x888]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
lea rcx, [rdi + 0x8d0]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov rax, qword [rsi]
mov qword [rdi + 0x518], rax
mov qword [rdi + 0x1138], rax
jmp case.0x1801672b6.10028
mov rax, qword [rsi]
mov qword [rdi + 0x2f0], rax
jmp case.0x1801672b6.10028
mov rcx, qword [rsi]
mov qword [rsp + 0x1a8], r12
mov r12, rbx
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rbx
test rcx, rcx
je 0x1801679a0
mov rdx, 0xffffffffffffffff
inc rdx
cmp byte [rcx + rdx], bl
jne 0x180167967
cmp rdx, 0x7a1200
jbe 0x180167982
mov ebp, 0x2b
jmp 0x180167a22
lea r9, [rsp + 0x48]
mov qword [rsp + 0x20], rbx
lea r8, [rsp + 0x40]
call fcn.180174200
mov ebp, eax
test eax, eax
jne 0x180167a22
xor ecx, ecx
mov qword [rsp + 0x1b8], r15
call qword [fcn.1801d5f54]
mov r15, qword [rsp + 0x40]
xor ecx, ecx
call qword [fcn.1801d5f54]
mov rsi, qword [rsp + 0x48]
mov ebp, ebx
mov r14d, 4
test r15, r15
je 0x1801679f4
lea r8, [rdi + 0x890]
mov dword [rsp + 0x20], r14d
xor r9d, r9d
xor edx, edx
mov rcx, r15
call fcn.180169510
mov ebp, eax
mov rbx, r15
mov r12, rsi
test eax, eax
jne 0x180167a1a
mov rbx, r15
mov r12, rsi
test rsi, rsi
je 0x180167a1a
lea r8, [rdi + 0x898]
mov dword [rsp + 0x20], r14d
xor r9d, r9d
xor edx, edx
mov rcx, rsi
call fcn.180169510
mov ebp, eax
mov r15, qword [rsp + 0x1b8]
mov rcx, rbx
call qword [fcn.1801d5f54]
mov rcx, r12
call qword [fcn.1801d5f54]
mov r12, qword [rsp + 0x1a8]
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
lea rcx, [rdi + 0x890]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
lea rcx, [rdi + 0x898]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
lea rcx, [rdi + 0x8a0]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
lea rcx, [rdi + 0x850]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov rax, qword [rsi]
mov qword [rdi + 0x1f0], rax
jmp case.0x1801672b6.10028
mov rax, qword [rsi]
mov qword [rdi + 0x1e8], rax
test rax, rax
jne case.0x1801672b6.10028
mov ecx, 2
call fcn.1801d94dc
mov qword [rdi + 0x1e8], rax
jmp case.0x1801672b6.10028
mov rax, qword [rsi]
mov qword [rdi + 0x2c8], rax
jmp case.0x1801672b6.10028
mov rax, qword [rsi]
mov qword [rdi + 0x2f8], rax
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
lea rcx, [rdi + 0x720]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
lea rcx, [rdi + 0x728]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
lea rcx, [rdi + 0x730]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
lea rcx, [rdi + 0x740]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
lea rcx, [rdi + 0x738]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov rbx, qword [rsi]
test rbx, rbx
je case.0x1801672b6.10028
cmp byte [rbx], bpl
je case.0x1801672b6.10028
lea rcx, [rdi + 0x870]
mov rdx, rbx
call fcn.180166480
mov ebp, eax
test eax, eax
jne case.0x1801672b6.10028
mov rdx, rbx
mov rcx, rdi
call fcn.18016ffd0
mov ebp, eax
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
lea rcx, [rdi + 0x810]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov edx, 8
mov rcx, rdi
call fcn.18016fff0
test al, al
je case.0x180166e3e.244
mov rax, qword [rsi]
mov qword [rdi + 0x5b8], rax
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
lea rcx, [rdi + 0x750]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov edx, 1
mov rcx, rdi
call fcn.18016fff0
test al, al
je case.0x180166e3e.244
mov rdx, qword [rsi]
lea rcx, [rdi + 0x748]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
lea rcx, [rdi + 0x770]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
lea rcx, [rdi + 0x778]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov rax, qword [rsi]
mov qword [rdi + 0x510], rax
jmp case.0x1801672b6.10028
mov rax, qword [rdi + 0xe8]
mov r14d, 1
mov rsi, qword [rsi]
test rax, rax
je 0x180167d03
mov r8d, 2
mov edx, r14d
mov rcx, rdi
call fcn.1801783a0
cmp dword [rdi + 0xd0], 2
jne 0x180167c93
mov qword [rdi + 0xc8], rbx
mov dword [rdi + 0xd0], ebx
mov rcx, qword [rdi + 0xe8]
mov rax, qword [rdi + 0xa68]
cmp qword [rcx + 0xb8], rax
jne 0x180167cb1
mov qword [rdi + 0xa68], rbx
mov rax, qword [rdi + 0xa70]
cmp qword [rcx + 0xc0], rax
jne 0x180167cc8
mov qword [rdi + 0xa70], rbx
mov rax, qword [rdi + 0xc80]
cmp qword [rcx + 0xc8], rax
jne 0x180167cdf
mov qword [rdi + 0xc80], rbx
mov ecx, dword [rcx + 8]
mov edx, r14d
mov rax, qword [rdi + 0xe8]
dec ecx
mov dword [rax + 8], ecx
mov rcx, rdi
call fcn.1801783e0
mov rax, rbx
mov qword [rdi + 0xe8], rbx
test rsi, rsi
je case.0x1801672b6.10028
cmp dword [rsi], 0x7e117a1e
jne 0x180167d1d
mov qword [rdi + 0xe8], rsi
jmp 0x180167d26
test rax, rax
je case.0x1801672b6.10028
mov r8d, 2
mov edx, r14d
mov rcx, rdi
call fcn.1801783a0
mov rax, qword [rdi + 0xe8]
mov ecx, dword [rax + 8]
mov rax, qword [rdi + 0xe8]
inc ecx
mov dword [rax + 8], ecx
mov rcx, qword [rdi + 0xe8]
mov rdx, rcx
test byte [rcx + 4], 8
je 0x180167d75
lea rax, [rcx + 0x88]
mov qword [rdi + 0xc8], rax
mov dword [rdi + 0xd0], 2
cmp qword [rcx + 0xb8], rbx
je 0x180167da2
mov rcx, qword [rdi + 0xa68]
call fcn.180171440
mov rdx, qword [rdi + 0xe8]
mov rcx, rdx
mov rax, qword [rdx + 0xb8]
mov qword [rdi + 0xa68], rax
cmp qword [rdx + 0xc0], rbx
je 0x180167dcc
lea rcx, [rdi + 0xa70]
call fcn.180179810
mov rcx, qword [rdi + 0xe8]
mov rax, qword [rcx + 0xc0]
mov qword [rdi + 0xa70], rax
cmp qword [rcx + 0xc8], rbx
je 0x180167df1
mov rax, qword [rcx + 0xd0]
mov qword [rdi + 0x6b8], rax
mov rax, qword [rcx + 0xc8]
mov qword [rdi + 0xc80], rax
mov edx, r14d
mov rcx, rdi
call fcn.1801783e0
jmp case.0x1801672b6.10028
mov rax, qword [rsi]
mov qword [rdi + 0x6d8], rax
jmp case.0x1801672b6.10028
mov rax, qword [rsi]
mov qword [rdi + 0x290], rax
jmp case.0x1801672b6.10028
mov rax, qword [rsi]
mov qword [rdi + 0x2a0], rax
jmp case.0x1801672b6.10028
mov rax, qword [rsi]
mov qword [rdi + 0x2b0], rax
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
lea rcx, [rdi + 0x8c0]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
lea rcx, [rdi + 0x8c8]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov rax, qword [rsi]
mov qword [rdi + 0xa20], rax
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
lea rcx, [rdi + 0x8a8]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
lea rcx, [rdi + 0x8b0]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
lea rcx, [rdi + 0x8b8]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov rax, qword [rsi]
mov qword [rdi + 0x990], rax
jmp case.0x1801672b6.10028
mov rax, qword [rsi]
mov qword [rdi + 0x9c0], rax
jmp case.0x1801672b6.10028
mov rax, qword [rsi]
mov qword [rdi + 0x9b8], rax
jmp case.0x1801672b6.10028
mov rax, qword [r8]
mov qword [rcx + 0x6a8], rax
jmp case.0x1801672b6.10028
cmp edx, 0x4e2b
jg 0x180168416
je 0x1801683f0
add edx, 0xffffd80a
cmp edx, 0x5d
ja case.0x180168723.40296
lea r8, [0x180000000]
movsxd rax, edx
movzx eax, byte [r8 + rax + 0x168e08]
mov ecx, dword [r8 + rax*4 + 0x168d68]
add rcx, r8
jmp rcx
mov rdx, qword [rsi]
lea rcx, [rdi + 0x7c8]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov edx, 0x20
mov rcx, rdi
call fcn.18016fff0
test al, al
je case.0x180166e3e.239
mov rdx, qword [rsi]
lea rcx, [rdi + 0x768]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov edx, 0x20
mov rcx, rdi
call fcn.18016fff0
test al, al
je case.0x180166e3e.239
mov rdx, qword [rsi]
lea rcx, [rdi + 0x7d0]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
lea rcx, [rdi + 0x8e0]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
lea rcx, [rdi + 0x910]
call fcn.180166480
mov ebp, eax
cmp qword [rdi + 0x910], rbx
je case.0x1801672b6.10028
mov dword [rdi + 0x21c], 0x80
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
lea rcx, [rdi + 0x358]
xor r8d, r8d
call fcn.180164960
mov ebp, eax
test eax, eax
jne case.0x1801672b6.10028
mov byte [rdi + 0x531], 3
jmp 0x18016741d
mov rdx, qword [rsi]
lea rcx, [rdi + 0x848]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
lea rcx, [rdi + 0x7e8]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
lea rcx, [rdi + 0x780]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov rax, qword [rsi]
mov qword [rdi + 0xa00], rax
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
lea rcx, [rdi + 0x788]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
lea rcx, [rdi + 0x790]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
lea rcx, [rdi + 0x798]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
lea rcx, [rdi + 0x7a8]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
lea rcx, [rdi + 0x7a0]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
lea rcx, [rdi + 0x918]
call fcn.180166480
mov ebp, eax
mov byte [rdi + 0xa60], 1
jmp case.0x1801672b6.10028
mov r14d, 4
mov rcx, rdi
mov edx, r14d
call fcn.18016fff0
test al, al
je 0x180168115
mov rdx, qword [rsi]
lea rcx, [rdi + 0x758]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov ebp, r14d
jmp case.0x1801672b6.10028
mov r14d, 4
mov rcx, rdi
mov edx, r14d
call fcn.18016fff0
test al, al
je 0x180168115
mov rdx, qword [rsi]
lea rcx, [rdi + 0x7c0]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
lea rcx, [rdi + 0x7b8]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov edx, 1
mov rcx, rdi
call fcn.18016fff0
test al, al
je case.0x180166e3e.244
mov rdx, qword [rsi]
lea rcx, [rdi + 0x7b0]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
lea rcx, [rdi + 0x7d8]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
lea rcx, [rdi + 0x7e0]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
lea rcx, [rdi + 0x908]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov rax, qword [rsi]
mov qword [rdi + 0x9e0], rax
jmp case.0x1801672b6.10028
lea rdx, [rdi + 0x984]
mov rcx, qword [rsi]
call fcn.180169000
mov ebp, eax
test eax, eax
je case.0x1801672b6.10028
jmp 0x1801687db
lea rdx, [rdi + 0x988]
jmp 0x1801681e1
mov rdx, qword [rsi]
lea rcx, [rdi + 0x808]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
lea rcx, [rdi + 0x900]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov byte [rdi + 0xa61], bl
mov rdx, qword [rsi]
lea rcx, [rdi + 0x8d8]
call fcn.180166480
mov ebp, eax
jmp case.0x1801672b6.10028
mov byte [rdi + 0xa61], 1
jmp 0x180168233
mov rax, qword [rsi]
test rax, rax
je case.0x180166e3e.239
cmp dword [rax], 0xc0dedbad
je case.0x180166e3e.239
jmp case.0x1801672b6.10028
mov rax, qword [rsi]
mov qword [rdi + 0x520], rax
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
lea rcx, [rdi + 0x8e8]
call fcn.180166480
cmp qword [rdi + 0x8e8], rbx
mov ebp, eax
setne al
mov byte [rdi + 0xa63], al
jmp case.0x1801672b6.10028
mov rax, qword [rsi]
mov qword [rdi + 0xa08], rax
jmp case.0x1801672b6.10028
mov rax, qword [rsi]
mov qword [rdi + 0x2d8], rax
jmp case.0x1801672b6.10028
mov rax, qword [rsi]
mov qword [rdi + 0x2e8], rax
jmp case.0x1801672b6.10028
cmp qword [rdi + 0xa70], rbx
jne 0x1801682ef
call fcn.180179890
mov qword [rdi + 0xa70], rax
test rax, rax
je 0x18016750c
mov rsi, qword [rsi]
test rsi, rsi
je 0x18016834d
lea rcx, [rdi + 0x8f8]
mov rdx, rsi
call fcn.180166480
mov ebp, eax
test eax, eax
jne 0x1801687db
mov rcx, qword [rdi + 0xc58]
mov rdx, rsi
call fcn.1801661d0
test rax, rax
jne 0x180168341
mov rcx, qword [rdi + 0xc58]
call fcn.180166290
mov eax, 0x1b
mov qword [rdi + 0xc58], rbx
jmp 0x1801687db
mov qword [rdi + 0xc58], rax
jmp case.0x1801672b6.10028
mov rcx, qword [rdi + 0xc58]
call fcn.180166290
mov qword [rdi + 0xc58], rbx
mov rax, qword [rdi + 0xe8]
test rax, rax
je 0x180168379
cmp qword [rax + 0xc0], rbx
jne case.0x1801672b6.10028
lea rcx, [rdi + 0xa70]
call fcn.180179810
jmp case.0x1801672b6.10028
cmp qword [rdi + 0xa78], rbx
jne 0x1801683a8
call fcn.1801784f0
mov qword [rdi + 0xa78], rax
test rax, rax
je 0x18016750c
mov rbx, qword [rsi]
lea rcx, [rdi + 0x8f0]
mov rdx, rbx
call fcn.180166480
mov ebp, eax
test eax, eax
jne 0x1801687db
test rbx, rbx
je case.0x1801672b6.10028
mov rcx, qword [rdi + 0xa78]
mov rdx, rbx
call fcn.180178530
jmp case.0x1801672b6.10028
mov rax, qword [rsi]
mov qword [rdi + 0x2c0], rax
jmp case.0x1801672b6.10028
mov rax, qword [r8]
mov qword [rcx + 0x248], rax
test rax, rax
jne case.0x1801672b6.10028
lea rax, [fcn.1801dfdb4]
mov qword [rcx + 0x248], rax
jmp case.0x1801672b6.10028
cmp edx, 0x4f30
jg 0x18016859c
je 0x18016858d
add edx, 0xffffb1d4
cmp edx, 0xcf
ja case.0x180168723.40296
lea r8, [0x180000000]
movsxd rax, edx
movzx eax, byte [r8 + rax + 0x168ea8]
mov ecx, dword [r8 + rax*4 + 0x168e68]
add rcx, r8
jmp rcx
mov rax, qword [rsi]
mov qword [rdi + 0x268], rax
test rax, rax
setne al
mov byte [rdi + 0xc0c], al
jmp case.0x1801672b6.10028
mov rax, qword [rsi]
mov qword [rdi + 0x270], rax
test rax, rax
setne al
mov byte [rdi + 0xc0c], al
jmp case.0x1801672b6.10028
mov rax, qword [rsi]
mov qword [rdi + 0x278], rax
jmp case.0x1801672b6.10028
mov rax, qword [rsi]
mov qword [rdi + 0x250], rax
jmp case.0x1801672b6.10028
mov rax, qword [rsi]
mov qword [rdi + 0x260], rax
test rax, rax
jne 0x1801684d6
lea rax, [fcn.1801e0190]
mov byte [rdi + 0xa33], bl
mov qword [rdi + 0x260], rax
jmp case.0x1801672b6.10028
mov byte [rdi + 0xa33], 1
jmp case.0x1801672b6.10028
mov rax, qword [rsi]
mov qword [rdi + 0x230], rax
jmp case.0x1801672b6.10028
mov rax, qword [rsi]
mov qword [rdi + 0x280], rax
jmp case.0x1801672b6.10028
mov edx, 8
mov rcx, rdi
call fcn.18016fff0
test al, al
je case.0x180166e3e.244
mov rax, qword [rsi]
mov qword [rdi + 0x5b0], rax
jmp case.0x1801672b6.10028
mov rax, qword [rsi]
mov qword [rdi + 0x288], rax
jmp case.0x1801672b6.10028
mov rax, qword [rsi]
mov qword [rdi + 0x298], rax
jmp case.0x1801672b6.10028
mov rax, qword [rsi]
mov qword [rdi + 0x2a8], rax
jmp case.0x1801672b6.10028
mov rax, qword [rsi]
mov qword [rdi + 0x258], rax
jmp case.0x1801672b6.10028
mov rax, qword [rsi]
mov qword [rdi + 0x9a0], rax
jmp case.0x1801672b6.10028
mov rax, qword [rsi]
mov qword [rdi + 0x9a8], rax
jmp case.0x1801672b6.10028
mov rax, qword [rsi]
mov qword [rdi + 0x9b0], rax
jmp case.0x1801672b6.10028
mov rax, qword [r8]
mov qword [rcx + 0x9d8], rax
jmp case.0x1801672b6.10028
cmp edx, 0x75c1
jg 0x1801686a1
je 0x18016868d
cmp edx, 0x75a3
jg 0x180168628
je 0x18016860f
sub edx, 0x4f3b
je 0x180168600
sub edx, 0x12
je 0x1801685f1
sub edx, 2
je 0x1801685e2
cmp edx, 9
jne case.0x180168723.40296
mov rax, qword [r8]
mov qword [rcx + 0x2b8], rax
jmp case.0x1801672b6.10028
mov rax, qword [r8]
mov qword [rcx + 0x2e0], rax
jmp case.0x1801672b6.10028
mov rax, qword [r8]
mov qword [rcx + 0x2d0], rax
jmp case.0x1801672b6.10028
mov rax, qword [r8]
mov qword [rcx + 0xa10], rax
jmp case.0x1801672b6.10028
mov rax, qword [r8]
cmp rax, 0xffffffffffffffff
jl 0x1801686d3
mov qword [rcx + 0x320], rax
jmp case.0x1801672b6.10028
sub edx, 0x75a4
je 0x180168678
sub edx, 1
je 0x180168664
cmp edx, 3
jne case.0x180168723.40296
mov rsi, qword [r8]
cmp rsi, 0xffffffffffffffff
jl 0x1801686d3
cmp qword [rcx + 0x238], rsi
jge 0x18016674e
mov rcx, qword [rcx + 0x938]
jmp 0x180166731
mov rax, qword [r8]
test rax, rax
js 0x1801686d3
mov qword [rcx + 0x6f0], rax
jmp case.0x1801672b6.10028
mov rax, qword [r8]
cmp rax, 0xffffffffffffffff
jl 0x1801686d3
mov qword [rcx + 0x340], rax
jmp case.0x1801672b6.10028
mov rax, qword [r8]
test rax, rax
js 0x1801686d3
mov qword [rcx + 0x330], rax
jmp case.0x1801672b6.10028
cmp edx, 0x9d63
jg 0x1801686ff
je 0x1801686e9
sub edx, 0x75c2
je 0x1801686cb
cmp edx, 0x7c
jne case.0x180168723.40296
mov rax, qword [r8]
mov qword [rcx + 0x528], rax
jmp case.0x1801672b6.10028
mov rax, qword [r8]
test rax, rax
jns 0x1801686dd
mov eax, 0x2b
jmp 0x1801687db
mov qword [rcx + 0x338], rax
jmp case.0x1801672b6.10028
mov rdx, qword [r8]
add rcx, 0x940
call fcn.1801663c0
mov ebp, eax
jmp case.0x1801672b6.10028
add edx, 0xffff629c
cmp edx, 0x12
ja case.0x180168723.40296
lea r8, [0x180000000]
movsxd rax, edx
mov eax, dword [r8 + rax*4 + 0x168f78]
add rax, r8
jmp rax
mov rdx, qword [rsi]
add rcx, 0x960
call fcn.1801663c0
mov ebp, eax
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
add rcx, 0x948
call fcn.1801663c0
mov ebp, eax
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
add rcx, 0x968
call fcn.1801663c0
mov ebp, eax
jmp case.0x1801672b6.10028
mov edx, 0x40
call fcn.18016fff0
test al, al
je case.0x180166e3e.239
mov rdx, qword [rsi]
lea rcx, [rdi + 0x958]
call fcn.1801663c0
mov ebp, eax
jmp case.0x1801672b6.10028
mov edx, 0x40
call fcn.18016fff0
test al, al
je case.0x180166e3e.239
mov rdx, qword [rsi]
lea rcx, [rdi + 0x978]
call fcn.1801663c0
mov ebp, eax
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
add rcx, 0x950
call fcn.1801663c0
mov ebp, eax
jmp case.0x1801672b6.10028
mov rdx, qword [rsi]
add rcx, 0x970
call fcn.1801663c0
mov ebp, eax
jmp case.0x1801672b6.10028
mov ebp, 0x30
mov eax, ebp
mov rcx, qword [rsp + 0x160]
xor rcx, rsp
call fcn.1801cb9c0
add rsp, 0x170
pop r14
pop rdi
pop rsi
pop rbp
pop rbx
ret