Function at 0x140037850
Capabilities:
Inspect section memory permissions

Disassembly:
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x78]
sub rsp, 0x178
mov r15, r9
mov rsi, r8
mov r11, rcx
mov qword [rsp + 0x68], 0
mov byte [rbp + 0xc8], 0
xor r12d, r12d
mov byte [rsp + 0x54], r12b
mov r14, qword [rcx + 0xa8]
xor eax, eax
cmp edx, 0x67f
cmovb eax, edx
mov r9d, eax
mov qword [rsp + 0x60], r9
lea r10, [0x140000000]
mov eax, dword [r10 + rax*8 + 0x4646d0]
shr rax, 0xe
and eax, 0x3ff
lea rax, [rax*8 + 0x4636d0]
add rax, r10
mov qword [rsp + 0x70], rax
mov edx, dword [r8]
and edx, 7
mov ecx, dword [r15]
and ecx, 7
mov r8, qword [rbp + 0xe0]
mov eax, dword [r8]
and eax, 7
lea eax, [rcx + rax*8]
lea edi, [rdx + rax*8]
mov r13d, dword [r11 + 0x54]
mov rax, qword [r11 + 0xa0]
mov rdx, rax
sub rdx, r14
sub rax, r14
xor ecx, ecx
cmp rax, 0x10
setb cl
xor eax, eax
test r9d, r9d
sete al
or ecx, eax
or r13d, ecx
or r13d, dword [r11 + 0x24]
mov dword [rsp + 0x58], r13d
test r13d, 0x3e001
je 0x140037b16
mov rcx, qword [r11 + 0x30]
test rcx, rcx
jne 0x14003794b
xor r8d, r8d
lea edx, [rcx + 5]
mov rcx, r11
call sym.ConsoleApplication1.exe_public:_unsigned_int___cdecl_asmjit::_abi_1_10::BaseEmitter::reportError_unsigned_int__char_const____ptr64____ptr64
jmp 0x140038566
test r9d, r9d
je 0x14003ea27
cmp rdx, 0x10
jae 0x14003798e
mov rdx, qword [r11 + 0x90]
add rdx, 0x48
mov r8d, reloc.WS2_32.dll_recv
call sym.ConsoleApplication1.exe_public:_unsigned_int___cdecl_asmjit::_abi_1_10::CodeHolder::growBuffer_struct_asmjit::_abi_1_10::CodeBuffer____ptr64__unsigned_long_long_unsigned___int64_____ptr64
mov rcx, qword [rbp + 0xc0]
test eax, eax
je 0x140037987
xor r8d, r8d
mov edx, eax
call sym.ConsoleApplication1.exe_public:_unsigned_int___cdecl_asmjit::_abi_1_10::BaseEmitter::reportError_unsigned_int__char_const____ptr64____ptr64
jmp 0x140037990
mov r14, qword [rcx + 0xa8]
xor eax, eax
test eax, eax
jne 0x14003852c
mov r11, qword [rbp + 0xc0]
mov rbx, qword [rbp + 0xe0]
test byte [r11 + 0x10], 1
je 0x140037a29
movups xmm0, xmmword [rsi]
movaps xmmword [rbp + 0x10], xmm0
movups xmm1, xmmword [r15]
movaps xmmword [rbp + 0x20], xmm1
movups xmm0, xmmword [rbx]
movaps xmmword [rbp + 0x30], xmm0
mov rax, qword [rbp + 0xe8]
movups xmm1, xmmword [rax]
movaps xmmword [rbp + 0x40], xmm1
movups xmm0, xmmword [rax + 0x10]
movaps xmmword [rbp + 0x50], xmm0
movups xmm1, xmmword [rax + 0x20]
movaps xmmword [rbp + 0x60], xmm1
mov r10, qword [r11 + 0x88]
mov rax, qword [rsp + 0x60]
mov dword [rbp - 4], eax
mov dword [rbp], r13d
mov rax, qword [r11 + 0x58]
mov qword [rbp + 4], rax
mov dword [rsp + 0x20], 0
mov r9d, 6
lea r8, [rbp + 0x10]
lea rdx, [rbp - 4]
movzx ecx, byte [r11 + 0x48]
call r10
test eax, eax
jne 0x140038533
mov r11, qword [rbp + 0xc0]
mov r9, qword [rsp + 0x60]
lea r10, [0x140000000]
mov eax, dword [r10 + r9*8 + 0x4646d0]
shr rax, 0xe
and eax, 0x3ff
mov edx, dword [r10 + rax*8 + 0x4636d0]
mov eax, r13d
shr eax, 0xd
test al, 1
je 0x140037aca
mov ecx, r13d
and ecx, 0x30000
mov eax, edx
shr eax, 0x10
test al, 1
jne 0x140037a76
test ecx, ecx
jne 0x140037a7a
lea eax, [rcx + 0x21]
jmp 0x140038533
test ecx, ecx
je 0x140037ac3
mov ecx, r13d
shr ecx, 0x10
test cl, 1
je 0x140037a98
mov eax, edx
shr eax, 0x11
test al, 1
jne 0x140037a98
mov eax, 0x22
jmp 0x140038533
mov eax, r13d
shr eax, 0x11
test al, 1
je 0x140037ab5
mov eax, edx
shr eax, 0x12
test al, 1
jne 0x140037ab5
mov eax, 0x23
jmp 0x140038533
not cl
and cl, 1
or cl, 0xf2
mov byte [r14], cl
inc r14
mov byte [r14], 0xf0
inc r14
test r13d, 0xc000
je 0x140037b0f
shr edx, 0xe
test dl, 1
je 0x140037b7d
mov eax, dword [r11 + 0x58]
test eax, eax
je 0x140037afd
shr eax, 8
test al, 0xf
jne 0x140037b7d
cmp dword [r11 + 0x5c], 1
jne 0x140037b7d
mov eax, r13d
shr eax, 0xf
not al
and al, 1
or al, 0xf2
mov byte [r14], al
inc r14
mov r8, qword [rbp + 0xe0]
movzx eax, byte [r10 + r9*8 + 0x4646d6]
mov ecx, dword [r10 + rax*4 + 0x467ad0]
mov eax, ecx
shr eax, 0x12
and eax, 7
mov dword [rsp + 0x50], eax
mov dword [rsp + 0x5c], 0
movzx ebx, byte [r10 + r9*8 + 0x4646d5]
or ebx, ecx
mov dword [rbp + 0xd8], ebx
movzx eax, byte [r10 + r9*8 + 0x4646d4]
cmp eax, 0xa0
ja case.default.0x140037b7b
mov ecx, dword [r10 + rax*4 + 0x3ea34]
add rcx, r10
mov edx, 0x8000000
mov eax, 1
mov r9d, 0x1000
jmp rcx
mov eax, 0x24
jmp 0x140038533
shr ebx, 0xd
and ebx, 7
mov dword [rsp + 0x5c], ebx
jmp case.0x140037b7b.63
mov eax, dword [rsi]
and eax, 7
cmp al, 3
jne case.default.0x140037b7b
lea rcx, [rbp + 0xd8]
call fcn.140037660
mov dword [rsp + 0x5c], eax
mov rcx, rsi
call fcn.14003f1a0
mov rcx, rax
call fcn.14003f140
movzx r12d, al
mov dil, 1
jmp 0x14003804d
mov eax, dword [rsi]
and al, 7
cmp al, 1
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.14003f1a0
mov rcx, rax
call fcn.140037100
movzx eax, al
lea r8, [0x140000000]
movzx ebx, byte [rax + r8 + 0x463170]
mov rcx, qword [rbp + 0xc0]
call fcn.1400028b0
test ebx, eax
mov byte [r14], 0x67
mov eax, 0
setne al
add r14, rax
jmp 0x14003a6ae
test edi, edi
je case.0x140037b7b.1
cmp edi, eax
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.1400370d0
test eax, eax
je 0x14003a6ae
mov rbx, qword [rbp + 0xe0]
mov eax, 0x1a
jmp 0x140038533
test edi, edi
je case.0x140037b7b.1
cmp edi, 9
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.1400370d0
cmp eax, 2
jne case.default.0x140037b7b
mov rcx, r15
call fcn.1400370d0
test eax, eax
jne case.default.0x140037b7b
jmp 0x14003a6ae
test edi, edi
je case.0x140037b7b.1
mov r12, rsi
cmp edi, 2
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.140037090
test al, al
je case.default.0x140037b7b
mov rcx, rsi
call fcn.14003f1a0
mov rcx, rax
call fcn.1400370d0
test eax, eax
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.14003f1a0
mov rcx, rax
call fcn.140037190
test al, al
jne case.default.0x140037b7b
jmp 0x14003add1
cmp edi, 3
jne 0x140037ce5
mov rcx, rsi
call fcn.14003f1a0
mov rcx, rax
call fcn.14003f140
movzx r12d, al
mov dil, 1
lea r10, [0x140000000]
jmp 0x14003a6b9
cmp edi, 0x19
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.1400370d0
test eax, eax
jne case.default.0x140037b7b
mov rcx, r15
call fcn.14003f1a0
mov rcx, rax
call fcn.14003f140
movzx r12d, al
mov dil, 1
lea r10, [0x140000000]
jmp 0x14003a6b9
mov eax, dword [rsi]
and al, 7
cmp al, 1
jne case.0x140037b7b.11
mov rcx, rsi
call fcn.1400370c0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f1b0
jmp case.0x140037b7b.11
movzx eax, byte [rsi + 3]
and eax, 0xf
or ebx, dword [r10 + rax*4 + 0x471110]
mov dword [rbp + 0xd8], ebx
mov eax, dword [rsi + 4]
mov dword [rsp + 0x5c], eax
cmp edi, 1
je case.0x140037b7b.63
mov r13, rsi
cmp edi, 2
je 0x14003c101
mov rbx, qword [rbp + 0xe0]
mov eax, 0x1a
jmp 0x140038533
cmp edi, 0x4a
jne case.0x140037b7b.14
lea edx, [rdi - 0x48]
mov rcx, r15
call fcn.140037430
test al, al
je case.default.0x140037b7b
xor edx, edx
mov rcx, qword [rbp + 0xe0]
call fcn.140037430
test al, al
je case.default.0x140037b7b
mov r13, rsi
jmp 0x14003c101
cmp edi, 2
jne case.default.0x140037b7b
mov r13, rsi
jmp 0x14003c101
test edi, edi
je case.0x140037b7b.1
mov edx, 0x11f
lea rcx, [rbp + 0xd8]
call fcn.140037680
mov dword [rsp + 0x50], 0
cmp edi, 1
jne 0x140037e0b
mov rcx, rsi
call fcn.1400370c0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f1b0
jmp 0x14003803d
cmp edi, 2
jne 0x140037e2e
mov rcx, rsi
call fcn.1400370c0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f1b0
mov r13, rsi
jmp 0x14003c101
mov rcx, r15
call fcn.1400370d0
mov dword [rsp + 0x50], eax
mov rcx, r15
call fcn.1400370c0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f1b0
cmp edi, 9
je 0x14003803d
cmp edi, 0xa
jne case.default.0x140037b7b
mov r13, rsi
jmp 0x14003c101
cmp edi, 2
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.1400370d0
mov dword [rsp + 0x5c], eax
mov rcx, rsi
call fcn.14003f1a0
mov rcx, rax
call fcn.140037180
mov eax, eax
lea rbx, [0x140000000]
movzx r12d, byte [rax + rbx + 0x463170]
mov rcx, rsi
call fcn.14003f1a0
mov rcx, rax
call fcn.140037190
test al, al
jne case.default.0x140037b7b
test dil, r12b
jne case.default.0x140037b7b
mov eax, dword [rbp + 0xd8]
shr eax, 0x15
and eax, 7
movzx eax, byte [rax + rbx + 0x463100]
mov byte [r14], al
mov eax, 0
setne al
lea rbx, [rax + r14]
mov edx, r13d
lea rcx, [rbp + 0xd8]
call fcn.140037670
mov edx, dword [rsp + 0x5c]
shr edx, 2
mov ecx, dword [rsp + 0x50]
and ecx, 8
or edx, ecx
shr edx, 1
or edx, eax
cmp edx, 0x80
ja 0x14003c247
and edx, 0x7f
movzx eax, dl
or al, 0x40
mov byte [rbx], al
xor edi, edi
test edx, edx
setne dil
add rdi, rbx
and dword [rsp + 0x50], 7
and dword [rsp + 0x5c], 7
mov rcx, rsi
call fcn.14003f1a0
mov rcx, rax
call fcn.1400374a0
mov ecx, eax
lea r14, [0x140000000]
movzx eax, byte [rcx + r14 + 0x463108]
mov byte [rdi], al
xor ebx, ebx
test al, al
setne bl
add rbx, rdi
mov rcx, qword [rbp + 0xc0]
call fcn.1400028b0
test r12d, eax
mov byte [rbx], 0x67
mov ecx, 0
setne cl
add rcx, rbx
mov r9d, dword [rbp + 0xd8]
mov eax, r9d
shr rax, 8
and eax, 0x1f
lea r8, [r14 + 0x4630c0]
lea r8, [r8 + rax*4]
movzx edx, byte [r8]
movzx eax, byte [r8 + 1]
mov byte [rcx], al
xor eax, eax
test dl, dl
setne al
add rax, rcx
movzx edx, byte [r8]
movzx ecx, byte [r8 + 2]
mov byte [rax], cl
xor ecx, ecx
cmp dl, 1
seta cl
add rcx, rax
mov byte [rcx], r9b
movzx eax, byte [rsp + 0x50]
shl al, 3
sub al, 0x40
add al, byte [rsp + 0x5c]
mov byte [rcx + 1], al
lea r14, [rcx + 2]
jmp case.0x140037b7b.0
cmp edi, 0x49
jne 0x140038025
lea edx, [rdi - 0x47]
mov rcx, r15
call fcn.140037430
mov rbx, qword [rbp + 0xe0]
test al, al
je 0x140037c3f
xor edx, edx
mov rcx, rbx
call fcn.140037430
test al, al
je 0x140037c3f
mov rcx, rsi
call fcn.1400370d0
mov dword [rsp + 0x5c], eax
mov edi, dword [rsp + 0x54]
jmp 0x140038054
cmp edi, eax
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.1400373a0
test al, al
je case.default.0x140037b7b
mov rcx, rsi
call fcn.1400370d0
mov dword [rsp + 0x5c], eax
mov edi, dword [rsp + 0x54]
mov rbx, qword [rbp + 0xe0]
mov eax, dword [rbp + 0xd8]
shr eax, 0x15
and eax, 7
lea r8, [0x140000000]
movzx eax, byte [rax + r8 + 0x463100]
mov byte [r14], al
mov eax, 0
setne al
add rax, r14
mov edx, dword [rbp + 0xd8]
or edx, r13d
shr edx, 0x15
mov ecx, dword [rsp + 0x5c]
and ecx, 8
or edx, ecx
shr edx, 2
mov ecx, dword [rsp + 0x50]
and ecx, 8
or edx, ecx
shr edx, 1
cmp edx, 0x80
ja 0x14003c24e
and edx, 0x7f
movzx ecx, dl
or cl, 0x40
mov byte [rax], cl
xor ecx, ecx
test edx, edx
setne cl
add rcx, rax
and dword [rsp + 0x50], 7
and dword [rsp + 0x5c], 7
mov r9d, dword [rbp + 0xd8]
mov eax, r9d
shr rax, 8
and eax, 0x1f
lea r8, [r8 + rax*4]
lea r8, [r8 + 0x4630c0]
movzx edx, byte [r8]
movzx eax, byte [r8 + 1]
mov byte [rcx], al
xor eax, eax
test dl, dl
setne al
add rax, rcx
movzx edx, byte [r8]
movzx ecx, byte [r8 + 2]
mov byte [rax], cl
xor ecx, ecx
cmp dl, 1
seta cl
add rcx, rax
mov byte [rcx], r9b
movzx eax, byte [rsp + 0x50]
shl al, 3
sub al, 0x40
add al, byte [rsp + 0x5c]
mov byte [rcx + 1], al
lea r14, [rcx + 2]
jmp 0x14003a758
cmp edi, eax
jne case.default.0x140037b7b
jmp 0x14003803d
mov rcx, rsi
call fcn.1400370c0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f1b0
cmp edi, 9
jne 0x14003816c
mov rcx, rsi
call fcn.1400370d0
mov dword [rsp + 0x50], eax
mov rcx, r15
jmp 0x140038040
cmp edi, 0x11
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.1400370d0
mov dword [rsp + 0x50], eax
jmp 0x14003c0fe
cmp edi, 9
jne 0x1400381d7
mov rcx, rsi
call fcn.1400370d0
mov dword [rsp + 0x50], eax
mov rcx, r15
call fcn.1400370d0
mov dword [rsp + 0x5c], eax
mov rcx, rsi
call fcn.1400370c0
cmp eax, 2
jne 0x1400381bc
mov byte [r14], 0x66
inc r14
jmp case.0x140037b7b.63
mov rcx, rsi
call fcn.1400370c0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f1f0
jmp case.0x140037b7b.63
cmp edi, 0x11
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.1400370d0
mov dword [rsp + 0x50], eax
mov r13, r15
mov rcx, rsi
call fcn.1400370c0
cmp eax, 2
jne 0x140038208
mov byte [r14], 0x66
inc r14
jmp 0x14003c101
mov rcx, rsi
call fcn.1400370c0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f1f0
jmp 0x14003c101
mov rcx, rsi
call fcn.1400370c0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f1b0
cmp edi, 9
jne 0x14003825b
mov rcx, rsi
call fcn.1400370d0
mov dword [rsp + 0x5c], eax
mov rcx, r15
call fcn.1400370d0
mov dword [rsp + 0x50], eax
jmp case.0x140037b7b.63
cmp edi, 0xa
jne case.default.0x140037b7b
mov r13, rsi
mov rcx, r15
call fcn.1400370d0
mov dword [rsp + 0x50], eax
jmp 0x14003c101
cmp edi, 9
jne 0x140038369
mov rcx, rsi
call fcn.1400370c0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f1d0
mov rcx, rsi
call fcn.1400370c0
mov ebx, eax
mov rcx, r15
call fcn.1400370c0
cmp ebx, eax
jne 0x14003b21d
mov rcx, rsi
call fcn.1400370d0
mov dword [rsp + 0x5c], eax
mov rcx, r15
call fcn.1400370d0
mov dword [rsp + 0x50], eax
mov rcx, rsi
call fcn.1400370c0
cmp eax, 1
jne 0x14003832f
mov eax, dword [rsi]
and eax, 0xff000fff
mov ecx, 0x40000000
cmp eax, 0x1000021
je 0x1400382f8
xor eax, eax
cmp dword [rsp + 0x5c], 4
cmovae eax, ecx
or r13d, eax
jmp 0x140038302
bts r13d, 0x1f
add dword [rsp + 0x5c], 4
mov eax, dword [r15]
and eax, 0xff000fff
cmp eax, 0x1000021
je 0x140038320
xor eax, eax
cmp dword [rsp + 0x50], 4
cmovae eax, ecx
or r13d, eax
jmp 0x14003832a
bts r13d, 0x1f
add dword [rsp + 0x50], 4
mov dword [rsp + 0x58], r13d
mov edx, 0x200
mov ecx, r13d
call fcn.14003f190
test al, al
je case.0x140037b7b.63
mov edx, 2
lea rcx, [rbp + 0xd8]
call fcn.140037630
lea rdx, [rsp + 0x5c]
lea rcx, [rsp + 0x50]
call fcn.14003f170
jmp case.0x140037b7b.63
cmp edi, 0x11
jne 0x1400383eb
lea edx, [rdi - 0xf]
lea rcx, [rbp + 0xd8]
call fcn.140037630
mov rcx, rsi
call fcn.1400370c0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f1d0
mov rcx, rsi
call fcn.1400370d0
mov r13, r15
mov dword [rsp + 0x50], eax
mov rcx, rsi
call fcn.1400370c0
cmp eax, 1
jne 0x14003c101
mov eax, dword [rsi]
and eax, 0xff000fff
cmp eax, 0x1000021
je 0x1400383d9
xor eax, eax
cmp dword [rsp + 0x50], 4
mov ecx, 0x40000000
cmovae eax, ecx
or dword [rsp + 0x58], eax
jmp 0x14003c101
or dword [rsp + 0x58], 0x80000000
add dword [rsp + 0x50], 4
jmp 0x14003c101
cmp edi, 0xa
jne 0x140038434
mov rcx, r15
call fcn.1400370c0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f1d0
mov rcx, r15
call fcn.1400370d0
mov dword [rsp + 0x50], eax
mov r13, rsi
mov rcx, r15
call fcn.1400370c0
cmp eax, 1
jne 0x14003c101
mov rcx, r15
call fcn.140037370
test al, al
jne 0x1400383d9
jmp 0x1400383c1
mov edx, 0x80
lea rcx, [rbp + 0xd8]
call fcn.140037680
cmp edi, 0x19
jne 0x1400386b5
mov rcx, rsi
call fcn.1400370c0
mov dword [rsp + 0x78], eax
mov rcx, rsi
call fcn.1400370d0
mov dword [rsp + 0x5c], eax
mov rcx, r15
call fcn.14003f1a0
mov rcx, rax
call fcn.1400371e0
mov r12, rax
mov ebx, 1
lea edi, [rbx + 3]
mov eax, dword [rsp + 0x78]
cmp eax, ebx
jne 0x1400384c9
mov rcx, rsi
call fcn.140037370
test al, al
jne 0x1400384b3
xor ecx, ecx
mov eax, 0x40000000
cmp dword [rsp + 0x5c], edi
cmovae ecx, eax
or r13d, ecx
mov dword [rsp + 0x58], r13d
movzx edi, bl
jmp 0x1400385de
bts r13d, 0x1f
add dword [rsp + 0x5c], edi
mov dword [rsp + 0x58], r13d
movzx edi, bl
jmp 0x1400385de
cmp eax, 2
jne 0x1400384e4
mov edx, 0x200000
lea rcx, [rbp + 0xd8]
call fcn.1400376b0
jmp 0x1400385a9
cmp eax, edi
jne 0x1400384f0
movsxd r12, r12d
jmp 0x1400385a9
cmp eax, 8
jne 0x1400385a9
cmp dword [rsp + 0x60], 0x15
jne 0x14003850c
mov rcx, r12
call fcn.14003f210
test al, al
jne 0x14003850e
xor bl, bl
mov rcx, r12
call fcn.14003f120
test al, al
jne 0x14003857a
test bl, bl
jne 0x140038668
mov ecx, 0x32
call fcn.140037050
mov rbx, qword [rbp + 0xe0]
mov rcx, qword [rbp + 0xe8]
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], rsi
mov r9d, dword [rsp + 0x58]
mov r8d, dword [rsp + 0x60]
mov edx, eax
mov rcx, qword [rbp + 0xc0]
call fcn.140049250
add rsp, 0x178
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
test bl, bl
mov ebx, 1
je 0x140038599
mov edx, ebx
mov rcx, qword [rbp + 0xc0]
call fcn.140037330
test al, al
jne 0x14003866d
mov edx, dword [rsp + 0x78]
lea rcx, [rbp + 0xd8]
call fcn.14003f1f0
mov dword [rbp - 0x18], edi
lea rdx, [rbp - 0x18]
lea rcx, [rsp + 0x78]
call fcn.14003f180
mov edi, eax
mov rcx, r12
call fcn.14003f100
test al, al
je 0x1400385de
mov edx, 0x20
mov ecx, r13d
call fcn.14003f190
movzx edi, dil
test al, al
cmove edi, ebx
cmp dword [rsp + 0x5c], 0
jne 0x140038678
mov eax, dword [rsp + 0x78]
cmp eax, 1
je 0x1400385fc
cmp dil, 1
je 0x14003867c
mov edx, 0x20
mov ecx, r13d
call fcn.14003f190
test al, al
jne 0x140038678
mov edx, 0x8200000
lea rcx, [rbp + 0xd8]
call fcn.1400376a0
xor edx, edx
cmp dword [rsp + 0x78], 1
setne dl
add edx, 4
mov eax, dword [rsp + 0x50]
lea eax, [rax*8]
or edx, eax
lea rcx, [rbp + 0xd8]
call fcn.1400376b0
mov dword [rbp - 0x14], 4
lea rdx, [rbp - 0x14]
lea rcx, [rsp + 0x78]
call fcn.14003f180
movzx edi, al
lea r10, [0x140000000]
jmp 0x14003a6b9
mov ebx, 1
mov edx, edi
mov dword [rsp + 0x78], edx
jmp 0x14003859d
mov eax, dword [rsp + 0x78]
cmp eax, 1
je 0x1400386a0
mov eax, 3
cmp dil, 1
cmovne eax, ebx
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.140037630
jmp 0x14003804d
xor eax, eax
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.140037630
jmp 0x14003804d
cmp edi, 0x1a
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.1400370c0
mov dword [rbp - 0x60], eax
test eax, eax
je 0x14003b17f
mov rcx, r15
call fcn.14003f1a0
mov rcx, rax
call fcn.1400371e0
mov r12, rax
mov dword [rbp - 0x10], 4
lea rdx, [rbp - 0x10]
lea rcx, [rbp - 0x60]
call fcn.14003f180
movzx ebx, al
mov dword [rsp + 0x54], ebx
cmp dword [rbp - 0x60], 4
jne 0x140038708
movsxd r12, r12d
mov rcx, r12
call fcn.14003f100
test al, al
je 0x140038734
mov edx, 0x20
mov ecx, r13d
call fcn.14003f190
movzx ebx, bl
test al, al
mov eax, 1
cmove ebx, eax
mov dword [rsp + 0x54], ebx
jmp 0x140038739
mov eax, 1
cmp dword [rbp - 0x60], 1
je 0x14003874c
mov edx, 3
cmp bl, 1
cmovne edx, eax
jmp 0x14003874e
xor edx, edx
lea rcx, [rbp + 0xd8]
call fcn.140037630
mov edx, dword [rbp - 0x60]
lea rcx, [rbp + 0xd8]
call fcn.14003f1b0
mov r13, rsi
jmp 0x14003c101
cmp edi, eax
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.1400370c0
cmp eax, 1
je case.default.0x140037b7b
mov rcx, rsi
call fcn.1400370d0
mov dword [rsp + 0x50], eax
mov rcx, rsi
call fcn.1400370c0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f1b0
jmp 0x14003b2cc
mov rcx, r15
cmp edi, 9
jne 0x1400387dd
call fcn.1400370c0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f1b0
mov rcx, r15
call fcn.1400370d0
mov dword [rsp + 0x50], eax
jmp 0x14003803d
cmp edi, 0xa
jne 0x140038809
call fcn.1400370c0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f1b0
mov rcx, r15
call fcn.1400370d0
mov dword [rsp + 0x50], eax
mov r13, rsi
jmp 0x14003c101
call fcn.14003f1a0
mov rcx, rax
call fcn.1400371e0
mov r12, rax
mov byte [rsp + 0x54], 1
mov rax, qword [rsp + 0x60]
lea rcx, [0x140000000]
movzx edx, byte [rcx + rax*8 + 0x4646d7]
mov edx, dword [rcx + rdx*4 + 0x4644b0]
lea rcx, [rbp + 0xd8]
call fcn.140037680
mov rcx, rsi
call fcn.1400370c0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f1b0
lea rcx, [rbp + 0xd8]
call fcn.1400374a0
mov dword [rsp + 0x50], eax
cmp edi, 0x19
je 0x14003803d
cmp edi, 0x1a
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.1400370c0
test eax, eax
je 0x14003b17f
mov r13, rsi
jmp 0x14003c101
cmp edi, eax
je 0x14003803d
mov r13, rsi
cmp edi, 2
je 0x14003c101
mov edx, 0xe8
lea rcx, [rbp + 0xd8]
call fcn.140037680
mov dword [rsp + 0x50], 0
lea r10, [0x140000000]
jmp 0x140039236
test edi, 0x1c0
je 0x1400388fd
mov rcx, r8
call fcn.140037110
test al, al
je case.default.0x140037b7b
mov rcx, qword [rbp + 0xe0]
call fcn.1400370d0
test eax, eax
jne case.default.0x140037b7b
and edi, 0x3f
cmp edi, 9
jne 0x1400389c4
mov rcx, rsi
call fcn.1400370c0
mov ebx, eax
mov rcx, r15
call fcn.1400370c0
cmp ebx, eax
jne 0x14003b21d
mov rcx, rsi
call fcn.1400370c0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f1d0
mov rcx, rsi
call fcn.1400370d0
mov dword [rsp + 0x5c], eax
mov rcx, r15
call fcn.1400370d0
mov dword [rsp + 0x50], eax
mov rcx, rsi
call fcn.1400370c0
cmp eax, 1
jne case.0x140037b7b.63
mov rcx, rsi
call fcn.140037370
mov ebx, 0x40000000
test al, al
jne 0x14003897f
xor eax, eax
cmp dword [rsp + 0x5c], 4
cmovae eax, ebx
or r13d, eax
jmp 0x140038989
bts r13d, 0x1f
add dword [rsp + 0x5c], 4
mov rcx, r15
call fcn.140037370
mov edi, dword [rsp + 0x54]
test al, al
jne 0x1400389b0
xor eax, eax
cmp dword [rsp + 0x50], 4
cmovae eax, ebx
or r13d, eax
mov dword [rsp + 0x58], r13d
jmp 0x14003804d
bts r13d, 0x1f
mov dword [rsp + 0x58], r13d
add dword [rsp + 0x50], 4
jmp 0x14003804d
cmp edi, 0xa
jne case.default.0x140037b7b
jmp 0x1400383f0
cmp edi, 0x4a
jne case.0x140037b7b.14
mov rdi, qword [rbp + 0xe8]
mov rcx, rdi
call fcn.140037080
test al, al
je case.default.0x140037b7b
lea rcx, [rdi + 0x10]
call fcn.140037080
test al, al
je case.default.0x140037b7b
mov r13, rsi
jmp 0x14003c101
mov rcx, rsi
call fcn.1400370d0
mov dword [rsp + 0x50], eax
mov rcx, rsi
call fcn.1400370c0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f1f0
cmp edi, 9
jne 0x140038aaf
mov rcx, r15
call fcn.1400370d0
mov dword [rsp + 0x5c], eax
mov rcx, r15
call fcn.1400370c0
cmp eax, 1
jne 0x140038a85
mov eax, dword [r15]
and eax, 0xff000fff
mov edi, dword [rsp + 0x54]
mov rbx, qword [rbp + 0xe0]
cmp eax, 0x1000021
je 0x140038e6b
xor eax, eax
mov ecx, 0x40000000
cmp dword [rsp + 0x5c], 4
cmovae eax, ecx
or r13d, eax
mov dword [rsp + 0x58], r13d
jmp 0x140038054
mov rcx, r15
call fcn.1400370c0
cmp eax, 2
jne 0x140038a99
mov byte [r14], 0x66
inc r14
mov edx, 1
lea rcx, [rbp + 0xd8]
call fcn.140037630
jmp case.0x140037b7b.63
cmp edi, 0x11
jne case.default.0x140037b7b
mov r13, r15
mov rcx, r15
call fcn.1400370c0
test eax, eax
je 0x14003b17f
mov rcx, r15
call fcn.1400370c0
cmp eax, 2
jne 0x140038adf
mov byte [r14], 0x66
inc r14
mov rcx, r15
call fcn.1400370c0
xor edx, edx
cmp eax, 1
setne dl
lea rcx, [rbp + 0xd8]
call fcn.140037630
jmp 0x14003c101
cmp edi, 0x1b
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.14003f1a0
mov rcx, rax
call fcn.14003f150
movzx ebx, ax
mov rcx, r15
call fcn.14003f1a0
mov rcx, rax
call fcn.14003f140
movzx r12d, al
shl r12, 0x10
or r12, rbx
mov dil, 3
lea r10, [0x140000000]
jmp 0x14003a6b9
cmp edi, 0xc9
jne 0x140038bf0
lea edx, [rdi - 0x5e]
lea rcx, [rbp + 0xd8]
call fcn.140037680
mov rcx, rsi
call fcn.1400370c0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f1b0
mov rcx, qword [rbp + 0xe0]
call fcn.14003f1a0
mov rcx, rax
call fcn.1400371e0
mov r12, rax
mov dil, 1
mov rcx, rax
call fcn.14003f100
test al, al
je 0x140038bae
mov edx, 0x20
mov ecx, r13d
call fcn.14003f190
test al, al
je 0x140038bd3
mov ebx, 2
mov edx, ebx
lea rcx, [rbp + 0xd8]
call fcn.140037690
mov rcx, rsi
call fcn.1400370c0
mov edi, 4
cmp eax, ebx
cmove edi, ebx
mov rcx, rsi
call fcn.1400370d0
mov rcx, r15
mov dword [rsp + 0x50], eax
call fcn.1400370d0
mov dword [rsp + 0x5c], eax
jmp 0x14003804d
cmp edi, 0xd1
jne 0x140038ca4
lea edx, [rdi - 0x66]
lea rcx, [rbp + 0xd8]
call fcn.140037680
mov rcx, rsi
call fcn.1400370c0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f1b0
mov rcx, qword [rbp + 0xe0]
call fcn.14003f1a0
mov rcx, rax
call fcn.1400371e0
mov r12, rax
mov byte [rsp + 0x54], 1
mov rcx, rsi
call fcn.1400370c0
cmp eax, 4
jne 0x140038c4d
movsxd r12, r12d
mov rcx, r12
call fcn.14003f100
test al, al
je 0x140038c6a
mov edx, 0x20
mov ecx, r13d
call fcn.14003f190
test al, al
je 0x140038c93
mov ebx, 2
mov edx, ebx
lea rcx, [rbp + 0xd8]
call fcn.140037690
mov rcx, rsi
call fcn.1400370c0
mov ecx, 4
cmp eax, ebx
cmove ecx, ebx
mov byte [rsp + 0x54], cl
mov rcx, rsi
call fcn.1400370d0
mov dword [rsp + 0x50], eax
jmp 0x14003c0fe
cmp edi, 9
jne 0x140038d18
mov rcx, r15
call fcn.1400370c0
cmp eax, 1
je 0x140038e22
mov rcx, rsi
call fcn.1400370c0
mov ebx, eax
mov rcx, r15
call fcn.1400370c0
cmp ebx, eax
jne 0x14003b21d
mov rcx, rsi
call fcn.1400370d0
mov dword [rsp + 0x50], eax
mov rcx, r15
call fcn.1400370d0
mov dword [rsp + 0x5c], eax
mov edx, 0x1af
lea rcx, [rbp + 0xd8]
call fcn.140037680
mov rcx, rsi
call fcn.1400370c0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f1b0
jmp case.0x140037b7b.63
cmp edi, 0x11
jne 0x140038d69
mov rcx, r15
call fcn.1400370c0
cmp eax, 1
je 0x140038e84
mov rcx, rsi
call fcn.1400370d0
mov dword [rsp + 0x50], eax
mov r13, r15
mov edx, 0x1af
lea rcx, [rbp + 0xd8]
call fcn.140037680
mov rcx, rsi
call fcn.1400370c0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f1b0
jmp 0x14003c101
cmp edi, 0x19
jne case.0x140037b7b.13
lea edx, [rdi + 0x52]
lea rcx, [rbp + 0xd8]
call fcn.140037680
mov rcx, rsi
call fcn.1400370c0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f1b0
mov rcx, r15
call fcn.14003f1a0
mov rcx, rax
call fcn.1400371e0
mov r12, rax
mov dil, 1
mov rcx, rsi
call fcn.1400370c0
cmp eax, 4
jne 0x140038dbd
movsxd r12, r12d
mov rcx, r12
call fcn.14003f100
test al, al
je 0x140038dda
mov edx, 0x20
mov ecx, r13d
call fcn.14003f190
test al, al
je 0x140038dff
mov ebx, 2
mov edx, ebx
lea rcx, [rbp + 0xd8]
call fcn.140037690
mov rcx, rsi
call fcn.1400370c0
mov edi, 4
cmp eax, ebx
cmove edi, ebx
mov rcx, rsi
call fcn.1400370d0
mov dword [rsp + 0x5c], eax
mov dword [rsp + 0x50], eax
jmp 0x14003804d
cmp edi, 7
jbe case.0x140037b7b.12
cmp edi, 9
jne 0x140038e7f
xor edx, edx
mov rcx, rsi
call fcn.140037410
test al, al
je case.default.0x140037b7b
mov rcx, r15
call fcn.140037390
test al, al
je case.default.0x140037b7b
mov rcx, r15
call fcn.1400370d0
mov dword [rsp + 0x5c], eax
mov rcx, r15
call fcn.140037370
mov edi, dword [rsp + 0x54]
mov rbx, qword [rbp + 0xe0]
test al, al
je 0x140038a69
bts r13d, 0x1f
mov dword [rsp + 0x58], r13d
add dword [rsp + 0x5c], 4
jmp 0x140038054
cmp edi, 0x11
jne 0x140038e9b
xor edx, edx
mov rcx, rsi
call fcn.140037410
test al, al
je case.default.0x140037b7b
jmp 0x14003c0fe
cmp edi, 0x49
jne 0x140038edc
mov rcx, rsi
call fcn.1400370c0
mov ebx, eax
mov rcx, r15
call fcn.1400370c0
cmp ebx, eax
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.1400370c0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f1d0
mov rcx, qword [rbp + 0xe0]
jmp 0x140038040
cmp edi, 0x89
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.1400370c0
mov ebx, eax
mov rcx, r15
call fcn.1400370c0
cmp ebx, eax
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.1400370c0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f1d0
mov r13, qword [rbp + 0xe0]
jmp 0x14003c101
cmp edi, eax
jne 0x140038f7b
mov rcx, rsi
call fcn.1400370c0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f1d0
mov rcx, rsi
call fcn.1400370d0
mov dword [rsp + 0x5c], eax
mov rcx, rsi
call fcn.1400370c0
cmp eax, 1
jne case.0x140037b7b.63
mov rcx, rsi
call fcn.140037370
mov edi, dword [rsp + 0x54]
mov rbx, qword [rbp + 0xe0]
test al, al
jne 0x140038e6b
jmp 0x140038a69
cmp edi, 2
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.1400370c0
test eax, eax
je 0x14003b17f
mov rcx, rsi
call fcn.1400370c0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f1d0
mov r13, rsi
jmp 0x14003c101
cmp edi, 0x19
jne 0x14003903d
mov rcx, rsi
call fcn.1400370d0
test eax, eax
jne case.default.0x140037b7b
mov rcx, r15
call fcn.14003f1a0
mov rcx, rax
call fcn.14003f140
movzx r12d, al
mov dil, 1
mov rax, qword [rsp + 0x60]
lea rcx, [0x140000000]
movzx eax, byte [rcx + rax*8 + 0x4646d7]
mov ebx, dword [rcx + rax*4 + 0x4644b0]
mov rcx, rsi
call fcn.1400370c0
xor edx, edx
cmp eax, 1
setne dl
add edx, ebx
lea rcx, [rbp + 0xd8]
call fcn.140037680
mov rcx, rsi
call fcn.1400370c0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f220
lea r10, [0x140000000]
jmp 0x14003a6b9
cmp edi, 9
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.1400370d0
test eax, eax
jne case.default.0x140037b7b
mov rcx, r15
call fcn.1400370d0
cmp eax, 2
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.1400370c0
xor edx, edx
cmp eax, 1
setne dl
lea rcx, [rbp + 0xd8]
call fcn.140037630
mov rcx, rsi
call fcn.1400370c0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f220
jmp 0x14003a6ae
cmp edi, 0xa
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.140037090
test al, al
je case.default.0x140037b7b
mov rcx, rsi
call fcn.14003f1a0
mov rcx, rax
call fcn.1400370d0
cmp eax, 7
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.14003f1a0
mov rcx, rax
call fcn.140037190
test al, al
jne case.default.0x140037b7b
mov rcx, r15
call fcn.1400370d0
cmp eax, 2
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.1400370c0
mov ebx, eax
test eax, eax
je 0x14003b17f
mov r12, rsi
xor edx, edx
cmp eax, 1
setne dl
lea rcx, [rbp + 0xd8]
call fcn.140037630
mov edx, ebx
lea rcx, [rbp + 0xd8]
call fcn.14003f220
jmp 0x14003add1
cmp edi, eax
jne 0x140038f7b
mov rcx, rsi
call fcn.1400370d0
mov dword [rsp + 0x5c], eax
mov rcx, rsi
call fcn.1400370c0
cmp eax, 1
jne 0x14003915d
mov eax, dword [rsi]
jmp 0x140038a4e
mov rcx, qword [rbp + 0xc0]
call fcn.1400372e0
test al, al
je 0x1400391a0
mov rax, qword [rsp + 0x60]
lea rcx, [0x140000000]
movzx eax, byte [rcx + rax*8 + 0x4646d7]
mov edx, dword [rsp + 0x5c]
and edx, 7
add edx, dword [rcx + rax*4 + 0x4644b0]
lea rcx, [rbp + 0xd8]
call fcn.140037680
jmp 0x140039083
mov rcx, rsi
call fcn.1400370c0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f1d0
jmp case.0x140037b7b.63
cmp edi, 3
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.14003f1a0
mov rcx, rax
call fcn.1400371e0
mov r12, rax
mov dil, 1
lea r10, [0x140000000]
jmp 0x14003a6b9
mov edx, 0xc0
mov ecx, r13d
call fcn.14003f190
test al, al
je 0x140039224
mov edx, reloc.WS2_32.dll_recv
mov rcx, qword [rbp + 0xc0]
call fcn.140037330
test al, al
je 0x140039224
mov edx, 0x40
mov ecx, r13d
call fcn.14003f190
shl al, 4
add al, 0x2e
mov byte [r14], al
inc r14
mov dword [rsp + 0x50], 0
lea r10, [0x140000000]
mov r13, rsi
mov ebx, dword [rbp + 0xd8]
mov edi, dword [rsp + 0x58]
or ebx, edi
shr ebx, 0x18
cmp ebx, 0x80
ja 0x14003c247
and ebx, 0x7f
movzx eax, bl
or al, 0x40
mov byte [r14], al
xor eax, eax
test ebx, ebx
setne al
add r14, rax
mov rdx, qword [rbp + 0xc0]
lea rax, [rdx + 0x98]
mov qword [rbp - 0x70], rax
mov rcx, r14
sub rcx, qword [rax]
mov qword [rbp - 0x68], rcx
mov rax, qword [rsp + 0x60]
movzx eax, byte [r10 + rax*8 + 0x4646d7]
mov eax, dword [r10 + rax*4 + 0x4644b0]
mov dword [rbp + 0xd0], eax
mov eax, dword [rbp + 0xd8]
and eax, 0x1f00
xor ecx, ecx
cmp eax, 0x100
sete cl
xor eax, eax
cmp dword [rsp + 0x50], eax
setne al
add eax, 5
add ecx, eax
mov dword [rbp - 0x78], ecx
mov eax, dword [r13]
and al, 7
mov rcx, r13
cmp al, 4
jne 0x14003957a
lea rax, [rdx + 0x30]
mov qword [rsp + 0x70], rax
mov rbx, qword [rax]
call fcn.14003f1a0
mov rdx, rax
mov rcx, rbx
call fcn.1400372b0
mov r13, rax
test rax, rax
je 0x14003e69b
mov rax, qword [rbp + 0xc0]
add rax, 0x90
mov qword [rbp - 0x80], rax
mov rdx, qword [rax]
mov rcx, r13
call fcn.140037260
test al, al
je 0x1400394cb
mov rcx, r13
call fcn.140037270
mov rdi, rax
sub edi, dword [rbp - 0x68]
mov r12d, dword [rbp - 0x78]
sub edi, r12d
lea ecx, [rdi - 2]
add ecx, r12d
call fcn.14003f2b0
mov r13d, dword [rsp + 0x58]
test al, al
je 0x140039623
mov ebx, dword [rbp + 0xd0]
test ebx, ebx
je 0x140039623
mov edx, 0x20
mov ecx, r13d
call fcn.14003f190
test al, al
jne 0x140039623
or r13d, 0x10
mov byte [r14], bl
sub dil, 2
add dil, r12b
mov byte [r14 + 1], dil
add r14, 2
mov edi, dword [rsp + 0x54]
mov rbx, qword [rbp + 0xc0]
test r13b, 1
je 0x1400393e6
cmp qword [rbx + 0x38], 0
je 0x1400393e6
movzx eax, dil
movzx ecx, byte [rbp + 0xc8]
mov qword [rsp + 0x48], r14
mov dword [rsp + 0x40], eax
mov dword [rsp + 0x38], ecx
mov rax, qword [rbp + 0xe8]
mov qword [rsp + 0x30], rax
mov rax, qword [rbp + 0xe0]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r15
mov r9, rsi
mov r8d, r13d
mov edx, dword [rsp + 0x60]
mov rcx, rbx
call fcn.140049060
mov qword [rbx + 0x54], 0
mov dword [rbx + 0x5c], 0
mov qword [rbx + 0x60], 0
mov rdx, qword [rbx + 0x90]
mov rcx, r14
sub rcx, qword [rbx + 0x98]
mov qword [rbx + 0xa8], r14
cmp qword [rdx + 0x50], rcx
cmovae rcx, qword [rdx + 0x50]
mov qword [rdx + 0x50], rcx
xor eax, eax
jmp 0x140038566
mov r13, rsi
mov rcx, rsi
call fcn.140037080
test al, al
je 0x140039499
mov edi, 1
mov edx, edi
mov rcx, rsi
call fcn.140037130
test al, al
je case.default.0x140037b7b
mov rbx, qword [rbp + 0xc0]
mov rcx, rbx
call fcn.1400372e0
test al, al
je 0x14003946f
mov rcx, rsi
call fcn.1400370c0
cmp eax, 2
je 0x140039488
mov rcx, rbx
call fcn.1400372f0
test al, al
je 0x14003948d
mov rcx, rsi
call fcn.1400370c0
cmp eax, 4
jne 0x14003948d
mov rax, rdi
jmp 0x14003948f
xor eax, eax
mov byte [r14], 0x67
add r14, rax
mov r13, r15
mov dword [rsp + 0x50], 0
lea r10, [0x140000000]
jmp 0x140039236
cmp edi, eax
je 0x14003803d
mov r13, rsi
cmp edi, 2
je 0x14003c101
mov edx, 0xe9
jmp 0x1400388ae
mov ebx, dword [rbp + 0xd0]
test ebx, ebx
je 0x140039505
cmp dword [rbp + 0xd8], 0
je 0x1400394ee
mov edx, reloc.WS2_32.dll_recv
mov ecx, edi
call fcn.14003f190
test al, al
je 0x140039505
mov byte [r14], bl
inc r14
mov ebx, 0xffffffff
mov r8b, 1
mov edi, dword [rsp + 0x54]
jmp 0x14003e5fb
cmp dword [rbp + 0xd8], 0
je 0x140039619
mov edx, reloc.WS2_32.dll_recv
mov ecx, edi
call fcn.14003f190
test al, al
jne 0x140039619
mov edx, 0x1f00
lea rcx, [rbp + 0xd8]
call fcn.1400376c0
mov byte [r14], reloc.WS2_32.dll_ntohs
xor ecx, ecx
test eax, eax
setne cl
movzx eax, byte [rbp + 0xd8]
mov byte [r14 + rcx], al
lea rdx, [rcx + 1]
add rdx, r14
mov ecx, dword [rsp + 0x50]
test ecx, ecx
setne al
shl cl, 3
sub cl, 0x40
mov byte [rdx], cl
movzx r14d, al
add r14, rdx
mov ebx, 0xfffffffc
mov edi, dword [rsp + 0x54]
jmp 0x14003e5f8
call fcn.1400370a0
test al, al
je case.default.0x140037b7b
mov rdi, qword [rbp + 0xc0]
mov rcx, rdi
call fcn.1400372d0
mov rcx, rax
call fcn.140037280
mov r12, rax
mov qword [rbp - 0x70], rax
mov rcx, r13
call fcn.14003f1a0
mov rcx, rax
call fcn.1400371e0
mov r13, rax
cmp r12, 0xffffffffffffffff
je 0x1400396a1
mov r12d, dword [rbp - 0x78]
mov rdi, rax
sub rdi, r12
sub rdi, qword [rbp - 0x70]
sub rdi, qword [rbp - 0x68]
mov rcx, qword [rbp + 0xc0]
call fcn.140037300
movzx ecx, al
call fcn.1400371f0
test al, al
jne 0x140039336
mov rcx, rdi
call fcn.14003f120
test al, al
jne 0x140039336
mov rax, qword [rsp + 0x60]
cmp eax, 0x12f
je 0x14003969a
cmp eax, 0x3b
je 0x14003969a
mov ecx, 0x30
jmp 0x140038527
cmp dword [rbp + 0xd8], 0
je 0x140039619
mov edx, reloc.WS2_32.dll_recv
mov ecx, r13d
call fcn.14003f190
test al, al
jne 0x140039619
and r13d, 0xffffffef
mov edx, 0x1f00
lea rcx, [rbp + 0xd8]
call fcn.1400376c0
mov byte [r14], reloc.WS2_32.dll_ntohs
xor ecx, ecx
test eax, eax
setne cl
add r14, rcx
movzx eax, byte [rbp + 0xd8]
mov byte [r14], al
mov ecx, dword [rsp + 0x50]
test ecx, ecx
setne al
shl cl, 3
sub cl, 0x40
mov byte [r14 + 1], cl
movzx ebx, al
mov edx, edi
lea rcx, [rbx + 1]
add rcx, r14
call fcn.14003f2d0
add rbx, 5
add r14, rbx
jmp case.0x140037b7b.0
mov rdi, qword [rbp + 0xc0]
mov r12d, 4
mov r8d, r12d
lea rdx, [rsp + 0x68]
mov rcx, qword [rdi + 0x30]
call sym.ConsoleApplication1.exe_public:_unsigned_int___cdecl_asmjit::_abi_1_10::CodeHolder::newRelocEntry_struct_asmjit::_abi_1_10::RelocEntry____ptr64____ptr64__enum_asmjit::_abi_1_10::RelocType____ptr64
test eax, eax
jne 0x14003852c
mov rcx, rdi
call fcn.140037340
mov rcx, qword [rsp + 0x68]
mov qword [rcx + 0x18], rax
mov rcx, qword [rdi + 0x90]
call fcn.140037210
mov rcx, qword [rsp + 0x68]
mov dword [rcx + 0x10], eax
mov rax, qword [rsp + 0x68]
mov qword [rax + 0x20], r13
cmp dword [rbp + 0xd8], 0
je 0x1400397db
mov rcx, rdi
call fcn.140037300
movzx ecx, al
call fcn.140037200
test al, al
je 0x14003974b
mov rax, qword [rsp + 0x60]
cmp eax, 0x12f
je 0x140039720
cmp eax, 0x3b
jne 0x14003974b
test ebx, ebx
jne 0x14003972b
mov byte [r14], 0x40
inc r14
mov rdx, r13
mov rcx, qword [rdi + 0x30]
call sym.ConsoleApplication1.exe_public:_unsigned_int___cdecl_asmjit::_abi_1_10::CodeHolder::addAddressToAddressTable_unsigned_long_long_unsigned___int64_____ptr64
test eax, eax
jne 0x14003852c
mov rax, qword [rsp + 0x68]
mov dword [rax + 4], 5
mov edx, 0x1f00
lea rcx, [rbp + 0xd8]
call fcn.1400376c0
mov byte [r14], reloc.WS2_32.dll_ntohs
xor ecx, ecx
test eax, eax
setne cl
add r14, rcx
movzx eax, byte [rbp + 0xd8]
mov byte [r14], al
mov ecx, dword [rsp + 0x50]
test ecx, ecx
setne al
shl cl, 3
sub cl, 0x40
mov byte [r14 + 1], cl
movzx ebx, al
mov rcx, qword [rsp + 0x68]
add rcx, 8
mov r8, r12
xor edx, edx
call fcn.140037220
lea rdx, [rbx + 1]
add rdx, r14
sub rdx, qword [rdi + 0xa8]
mov rcx, qword [rsp + 0x68]
add rcx, 8
xor r8d, r8d
call fcn.140037250
xor edx, edx
lea rcx, [rbx + 1]
add rcx, r14
call fcn.14003f2d0
add rbx, 5
add r14, rbx
mov r13d, dword [rsp + 0x58]
jmp case.0x140037b7b.0
mov ebx, dword [rbp + 0xd0]
mov byte [r14], bl
mov rcx, qword [rsp + 0x68]
add rcx, 8
xor edx, edx
lea r8d, [rdx + 1]
call fcn.140037220
lea rdx, [r14 + 1]
sub rdx, qword [rdi + 0xa8]
mov rcx, qword [rsp + 0x68]
add rcx, 8
xor r8d, r8d
call fcn.140037250
mov byte [r14 + 1], 0
mov r13d, dword [rsp + 0x58]
jmp 0x140039383
cmp edi, 2
jne 0x14003988e
mov r13, rsi
mov rcx, rsi
call fcn.1400370c0
mov ebx, eax
test eax, eax
jne 0x14003985a
mov rcx, qword [rbp + 0xc0]
call fcn.140037310
mov ebx, eax
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f1b0
jmp 0x14003c101
add ebx, 0xfffffffe
lea eax, [rbx - 2]
test eax, 0xfffffffd
je 0x14003987b
mov rcx, qword [rbp + 0xc0]
call fcn.140037310
cmp ebx, eax
jne 0x14003a28a
mov edx, ebx
lea rcx, [rbp + 0xd8]
call fcn.14003f1b0
jmp 0x14003c101
cmp edi, 0x1b
jne case.default.0x140037b7b
mov rcx, r11
call fcn.1400372e0
test al, al
je case.default.0x140037b7b
mov rcx, rsi
call fcn.14003f1a0
mov rbx, rax
mov rcx, r15
call fcn.14003f1a0
mov rdi, rax
mov rcx, rbx
call fcn.1400371e0
cmp rax, 0xffff
jg 0x140038522
mov rcx, rdi
call fcn.1400371e0
mov ecx, 0xffffffff
cmp rax, rcx
jg 0x140038522
mov rax, qword [rsp + 0x60]
lea rcx, [0x140000000]
movzx edx, byte [rcx + rax*8 + 0x4646d7]
mov edx, dword [rcx + rdx*4 + 0x4644b0]
lea rcx, [rbp + 0xd8]
call fcn.140037680
mov rcx, rbx
call fcn.1400371e0
mov rbx, rax
shl rbx, 0x20
mov rcx, rdi
call fcn.1400371e0
mov r12, rax
or r12, rbx
mov dil, 6
lea r10, [0x140000000]
jmp 0x14003a6b9
cmp edi, 0x11
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.1400370c0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f1b0
mov rcx, rsi
call fcn.1400370d0
mov dword [rsp + 0x50], eax
jmp 0x14003c0fe
cmp edi, 9
jne 0x140039b96
mov rcx, rsi
call fcn.140037110
mov rcx, rsi
test al, al
je 0x140039b10
call fcn.1400370d0
mov dword [rsp + 0x5c], eax
mov rcx, r15
call fcn.1400370d0
mov dword [rsp + 0x50], eax
mov rcx, r15
call fcn.140037110
test al, al
je 0x140039a58
mov rcx, rsi
call fcn.1400370c0
mov ebx, eax
mov rcx, r15
call fcn.1400370c0
cmp ebx, eax
jne case.default.0x140037b7b
cmp ebx, 1
jne 0x140039a34
mov rcx, rsi
call fcn.140037370
mov ebx, 0x40000000
test al, al
jne 0x1400399ea
xor eax, eax
cmp dword [rsp + 0x5c], 4
cmovae eax, ebx
or r13d, eax
jmp 0x1400399f4
bts r13d, 0x1f
add dword [rsp + 0x5c], 4
mov rcx, r15
call fcn.140037370
test al, al
jne 0x140039a0f
xor eax, eax
cmp dword [rsp + 0x50], 4
cmovae eax, ebx
or r13d, eax
jmp 0x140039a19
bts r13d, 0x1f
add dword [rsp + 0x50], 4
mov dword [rsp + 0x58], r13d
mov edx, 0x88
lea rcx, [rbp + 0xd8]
call fcn.140037680
jmp 0x14003832f
mov edx, 0x89
lea rcx, [rbp + 0xd8]
call fcn.140037680
mov edx, ebx
lea rcx, [rbp + 0xd8]
call fcn.14003f1b0
jmp 0x14003832f
mov rcx, r15
call fcn.1400373e0
test al, al
je 0x140039a99
mov edx, 0x8c
lea rcx, [rbp + 0xd8]
call fcn.140037680
mov rcx, rsi
call fcn.1400370c0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f1b0
mov ecx, 0xffffffff
add dword [rsp + 0x50], ecx
jmp case.0x140037b7b.63
mov rcx, r15
call fcn.1400373f0
test al, al
je 0x140039aea
mov edx, 0x120
lea rcx, [rbp + 0xd8]
call fcn.140037680
test byte [rsp + 0x50], 8
je case.0x140037b7b.63
mov rcx, qword [rbp + 0xc0]
call fcn.1400372e0
mov edi, dword [rsp + 0x54]
test al, al
je 0x14003804d
mov byte [r14], 0xf0
inc r14
and dword [rsp + 0x50], 7
jmp 0x14003804d
mov rcx, r15
call fcn.140037400
test al, al
je case.default.0x140037b7b
mov edx, 0x121
lea rcx, [rbp + 0xd8]
call fcn.140037680
jmp case.0x140037b7b.63
call fcn.1400370d0
mov dword [rsp + 0x50], eax
mov rcx, r15
call fcn.1400370d0
mov dword [rsp + 0x5c], eax
mov rcx, r15
call fcn.140037110
test al, al
je case.default.0x140037b7b
mov rcx, rsi
call fcn.1400373e0
test al, al
je 0x140039b5a
mov edx, 0x8e
lea rcx, [rbp + 0xd8]
call fcn.140037680
mov rcx, r15
jmp 0x140039a78
mov rcx, rsi
call fcn.1400373f0
test al, al
je 0x140039b70
mov edx, 0x122
jmp 0x140039aaa
mov rcx, rsi
call fcn.140037400
test al, al
je case.default.0x140037b7b
mov edx, 0x123
lea rcx, [rbp + 0xd8]
call fcn.140037680
jmp case.0x140037b7b.63
cmp edi, 0x11
jne 0x140039e00
mov rcx, rsi
call fcn.1400370d0
mov dword [rsp + 0x50], eax
mov r13, r15
mov rcx, rsi
call fcn.1400373e0
lea rcx, [rbp + 0xd8]
test al, al
je 0x140039bed
lea edx, [rdi + 0x7d]
call fcn.140037680
mov rcx, r15
call fcn.1400370c0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f1b0
mov ecx, 0xffffffff
add dword [rsp + 0x50], ecx
jmp 0x14003c101
xor edx, edx
call fcn.140037680
mov rcx, rsi
call fcn.1400370c0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f1d0
cmp dword [rsp + 0x50], 0
jne 0x140039d66
mov rcx, r15
call fcn.14003f1a0
mov rcx, rax
call fcn.140037160
test al, al
jne 0x140039d66
mov rcx, r15
call fcn.14003f1a0
mov rdi, rax
mov rcx, rsi
call fcn.1400370c0
mov dword [rbp + 0xd0], eax
mov rcx, qword [rbp + 0xc0]
call fcn.1400372e0
test al, al
je 0x140039c6b
mov edx, 0x300
mov ecx, dword [rsp + 0x58]
call fcn.14003f190
xor al, 1
jmp 0x140039dc3
mov rcx, rdi
call fcn.140037470
cmp eax, 2
je 0x140039d66
mov edx, 0x300
mov ebx, dword [rsp + 0x58]
mov ecx, ebx
call fcn.14003f190
test al, al
jne 0x140039d66
mov rcx, rdi
call fcn.1400371b0
mov qword [rbp - 0x78], rax
mov rcx, qword [rbp + 0xc0]
call fcn.1400372d0
mov rcx, rax
call fcn.140037280
mov qword [rbp - 0x70], rax
mov rcx, rdi
call fcn.140037470
test eax, eax
jne 0x140039da8
cmp qword [rbp - 0x70], 0xffffffffffffffff
je 0x140039da8
mov rcx, rdi
call fcn.140037490
test al, al
jne 0x140039da8
mov rcx, rdi
call fcn.1400374a0
mov dword [rbp - 0x68], eax
cmp dword [rbp + 0xd0], 8
je 0x140039d0b
mov edx, 0x40000000
mov ecx, ebx
call fcn.14003f190
test al, al
jne 0x140039d0b
xor edi, edi
jmp 0x140039d10
mov edi, 1
mov rax, qword [rbp + 0xc0]
mov rbx, qword [rax + 0x98]
mov rcx, qword [rax + 0x90]
call fcn.140036b80
xor ecx, ecx
cmp dword [rbp - 0x68], ecx
setne cl
add rcx, 9
sub rbx, rcx
xor edx, edx
cmp dword [rbp + 0xd0], 2
sete dl
sub rbx, rdx
sub rbx, qword [rbp - 0x70]
sub rbx, rdi
sub rbx, r14
mov rdi, qword [rbp - 0x78]
lea rcx, [rdi + rbx]
sub rcx, rax
call fcn.14003f120
test al, al
je 0x140039db8
mov rcx, rsi
call fcn.1400370c0
cmp eax, 1
jne 0x140039dea
mov rcx, rsi
call fcn.140037370
test al, al
jne 0x140039ddd
xor eax, eax
cmp dword [rsp + 0x50], 4
mov ecx, 0x40000000
cmovae eax, ecx
or dword [rsp + 0x58], eax
mov edx, 0x8a
lea rcx, [rbp + 0xd8]
call fcn.140037630
jmp 0x14003c101
mov rdi, qword [rbp - 0x78]
mov rcx, rdi
call fcn.14003f120
test al, al
jne 0x140039d66
mov ecx, 0xffffffff
cmp rdi, rcx
seta al
test al, al
je 0x140039d66
mov edx, 0xa0
lea rcx, [rbp + 0xd8]
call fcn.140037630
jmp 0x14003a30a
or dword [rsp + 0x58], 0x80000000
add dword [rsp + 0x50], 4
mov edx, 0x8a
lea rcx, [rbp + 0xd8]
call fcn.140037630
jmp 0x14003c101
cmp edi, 0xa
jne 0x14003a050
mov rcx, r15
call fcn.1400370d0
mov dword [rsp + 0x50], eax
mov r13, rsi
mov rcx, r15
call fcn.1400373e0
lea rcx, [rbp + 0xd8]
test al, al
je 0x140039e3d
mov edx, 0x8c
call fcn.140037680
mov rcx, rsi
jmp 0x140039bcc
xor edx, edx
call fcn.140037680
mov rcx, r15
call fcn.1400370c0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f1d0
cmp dword [rsp + 0x50], 0
jne 0x140039fb6
mov rcx, rsi
call fcn.14003f1a0
mov rcx, rax
call fcn.140037160
test al, al
jne 0x140039fb6
mov rcx, rsi
call fcn.14003f1a0
mov rdi, rax
mov rcx, r15
call fcn.1400370c0
mov dword [rbp + 0xd0], eax
mov rcx, qword [rbp + 0xc0]
call fcn.1400372e0
test al, al
je 0x140039ebb
mov edx, 0x300
mov ecx, dword [rsp + 0x58]
call fcn.14003f190
xor al, 1
jmp 0x14003a013
mov rcx, rdi
call fcn.140037470
cmp eax, 2
je 0x140039fb6
mov edx, 0x300
mov ebx, dword [rsp + 0x58]
mov ecx, ebx
call fcn.14003f190
test al, al
jne 0x140039fb6
mov rcx, rdi
call fcn.1400371b0
mov qword [rbp - 0x78], rax
mov rcx, qword [rbp + 0xc0]
call fcn.1400372d0
mov rcx, rax
call fcn.140037280
mov qword [rbp - 0x70], rax
mov rcx, rdi
call fcn.140037470
test eax, eax
jne 0x140039ff8
cmp qword [rbp - 0x70], 0xffffffffffffffff
je 0x140039ff8
mov rcx, rdi
call fcn.140037490
test al, al
jne 0x140039ff8
mov rcx, rdi
call fcn.1400374a0
mov dword [rbp - 0x68], eax
cmp dword [rbp + 0xd0], 8
je 0x140039f5b
mov edx, 0x40000000
mov ecx, ebx
call fcn.14003f190
test al, al
jne 0x140039f5b
xor edi, edi
jmp 0x140039f60
mov edi, 1
mov rax, qword [rbp + 0xc0]
mov rbx, qword [rax + 0x98]
mov rcx, qword [rax + 0x90]
call fcn.140036b80
xor ecx, ecx
cmp dword [rbp + 0xd0], 2
sete cl
sub rbx, rcx
xor edx, edx
cmp dword [rbp - 0x68], edx
setne dl
add rdx, 9
sub rbx, rdx
sub rbx, qword [rbp - 0x70]
sub rbx, rdi
sub rbx, r14
mov rdi, qword [rbp - 0x78]
lea rcx, [rdi + rbx]
sub rcx, rax
call fcn.14003f120
test al, al
je 0x14003a008
mov rcx, r15
call fcn.1400370c0
cmp eax, 1
jne 0x14003a03a
mov rcx, r15
call fcn.140037370
test al, al
jne 0x14003a02d
xor eax, eax
cmp dword [rsp + 0x50], 4
mov ecx, 0x40000000
cmovae eax, ecx
or dword [rsp + 0x58], eax
mov edx, 0x88
lea rcx, [rbp + 0xd8]
call fcn.140037630
jmp 0x14003c101
mov rdi, qword [rbp - 0x78]
mov rcx, rdi
call fcn.14003f120
test al, al
jne 0x140039fb6
mov ecx, 0xffffffff
cmp rdi, rcx
seta al
test al, al
je 0x140039fb6
mov edx, 0xa2
lea rcx, [rbp + 0xd8]
call fcn.140037630
jmp 0x14003a30a
or dword [rsp + 0x58], 0x80000000
add dword [rsp + 0x50], 4
mov edx, 0x88
lea rcx, [rbp + 0xd8]
call fcn.140037630
jmp 0x14003c101
cmp edi, 0x19
jne 0x14003a17b
mov rcx, rsi
call fcn.1400370d0
mov dword [rsp + 0x50], eax
mov rcx, rsi
call fcn.1400370c0
movzx ebx, al
mov dword [rsp + 0x54], ebx
cmp al, 1
jne 0x14003a0d1
mov rcx, rsi
call fcn.140037370
test al, al
jne 0x14003a098
xor eax, eax
mov ecx, 0x40000000
cmp dword [rsp + 0x50], 4
cmovae eax, ecx
or r13d, eax
jmp 0x14003a0a2
bts r13d, 0x1f
add dword [rsp + 0x50], 4
mov dword [rsp + 0x58], r13d
mov edx, 0xb0
lea rcx, [rbp + 0xd8]
call fcn.140037680
mov rcx, r15
call fcn.14003f1a0
mov rcx, rax
call fcn.14003f140
movzx r12d, al
jmp 0x14003b2cc
mov rcx, r15
call fcn.14003f1a0
mov rcx, rax
call fcn.1400371e0
mov r12, rax
cmp bl, 8
jne 0x14003a121
mov edx, 0x20
mov ecx, r13d
call fcn.14003f190
test al, al
jne 0x14003a121
mov rcx, r12
call fcn.14003f210
test al, al
je 0x14003a146
mov edx, 1
mov rcx, qword [rbp + 0xc0]
call fcn.140037330
test al, al
je 0x14003a146
mov bl, 4
mov dword [rsp + 0x54], ebx
mov edx, 0xb8
lea rcx, [rbp + 0xd8]
call fcn.140037680
movzx edx, bl
lea rcx, [rbp + 0xd8]
call fcn.14003f240
jmp 0x14003b2cc
mov rcx, r12
call fcn.14003f120
test al, al
je 0x14003a121
mov eax, dword [rsp + 0x50]
mov dword [rsp + 0x5c], eax
mov edx, 0x80000c7
lea rcx, [rbp + 0xd8]
call fcn.140037680
mov dword [rsp + 0x50], 0
mov dil, 4
jmp 0x14003804d
cmp edi, 0x1a
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.1400370c0
mov dword [rbp - 0x50], eax
test eax, eax
je 0x14003b17f
xor edx, edx
cmp eax, 1
setne dl
add edx, 0xc6
lea rcx, [rbp + 0xd8]
call fcn.140037680
mov edx, dword [rbp - 0x50]
lea rcx, [rbp + 0xd8]
call fcn.14003f1b0
mov dword [rsp + 0x50], 0
mov r13, rsi
mov rcx, r15
call fcn.14003f1a0
mov rcx, rax
call fcn.1400371e0
mov r12, rax
mov dword [rbp - 0xc], 4
lea rdx, [rbp - 0xc]
lea rcx, [rbp - 0x50]
call fcn.14003f180
mov byte [rsp + 0x54], al
jmp 0x14003c101
cmp edi, 0x11
jne 0x14003a294
mov rcx, rsi
call fcn.1400370d0
mov dword [rsp + 0x50], eax
mov r13, r15
mov edx, 0xa0
lea rcx, [rbp + 0xd8]
call fcn.140037680
mov rcx, rsi
call fcn.1400370c0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f1d0
mov rcx, rsi
call fcn.14003f1a0
mov rcx, rax
call fcn.1400370f0
test al, al
je case.default.0x140037b7b
cmp dword [rsp + 0x50], 0
jne case.default.0x140037b7b
mov rcx, r15
call fcn.14003f1a0
mov rcx, rax
call fcn.140037160
test al, al
jne 0x14003a28a
mov rcx, r15
call fcn.14003f1a0
mov rcx, rax
call fcn.140037470
cmp eax, 2
jne 0x14003a30a
mov eax, 0x2b
jmp 0x14003852c
cmp edi, 0xa
jne 0x14003a365
mov rcx, r15
call fcn.1400370d0
mov dword [rsp + 0x50], eax
mov r13, rsi
mov edx, 0xa2
lea rcx, [rbp + 0xd8]
call fcn.140037680
mov rcx, r15
call fcn.1400370c0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f1d0
mov rcx, r15
call fcn.14003f1a0
mov rcx, rax
call fcn.1400370f0
test al, al
je case.default.0x140037b7b
cmp dword [rsp + 0x50], 0
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.14003f1a0
mov rcx, rax
call fcn.140037160
test al, al
jne 0x14003a28a
mov rcx, r13
call fcn.14003f1a0
mov rcx, rax
call fcn.1400371b0
mov r12, rax
mov rcx, qword [rbp + 0xc0]
call fcn.140037310
movzx edi, al
mov rcx, r13
call fcn.14003f1a0
mov rcx, rax
call fcn.1400374a0
mov ecx, eax
lea r10, [0x140000000]
movzx eax, byte [rcx + r10 + 0x463108]
mov byte [r14], al
xor ecx, ecx
test al, al
setne cl
add r14, rcx
mov r13d, dword [rsp + 0x58]
jmp 0x14003a6b9
cmp edi, 0x19
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.14003f1a0
mov rcx, rax
call fcn.140037380
test al, al
je case.default.0x140037b7b
mov rcx, rsi
call fcn.1400370d0
mov dword [rsp + 0x50], eax
mov edx, 0xb8
lea rcx, [rbp + 0xd8]
call fcn.140037680
mov byte [rsp + 0x54], 8
mov rcx, r15
call fcn.14003f1a0
mov rcx, rax
call fcn.1400371e0
mov r12, rax
lea edx, [rdi - 0x11]
lea rcx, [rbp + 0xd8]
call fcn.140037640
jmp 0x14003b2cc
mov rcx, r15
call fcn.1400370c0
xor edx, edx
cmp eax, 1
setne dl
lea rcx, [rbp + 0xd8]
call fcn.140037630
mov rcx, rsi
call fcn.1400370c0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f1b0
cmp edi, 9
jne 0x14003816c
mov rcx, rsi
call fcn.1400370d0
mov dword [rsp + 0x50], eax
mov rcx, r15
call fcn.1400370d0
mov dword [rsp + 0x5c], eax
mov rcx, r15
call fcn.1400370c0
cmp eax, 1
jne case.0x140037b7b.63
jmp 0x140038a4b
cmp edi, 0xa
jne case.default.0x140037b7b
mov rcx, r15
call fcn.140037380
movzx edx, al
lea rcx, [rbp + 0xd8]
call fcn.14003f260
mov rcx, r15
call fcn.1400370d0
mov dword [rsp + 0x50], eax
mov r13, rsi
jmp 0x14003c101
cmp edi, 0x12
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.14003f1a0
mov rdi, rax
mov rcx, r15
call fcn.14003f1a0
mov rcx, rax
call fcn.140037100
movzx ebx, al
mov rcx, rdi
call fcn.140037100
cmp al, bl
jne case.default.0x140037b7b
mov rcx, rdi
call fcn.140037150
test al, al
jne case.default.0x140037b7b
mov rcx, rdi
call fcn.140037190
test al, al
jne case.default.0x140037b7b
mov rcx, rdi
call fcn.140037490
test al, al
je 0x14003a4e0
mov rcx, rdi
call fcn.1400374a0
cmp eax, 1
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.14003f1a0
mov rcx, rax
call fcn.1400370d0
mov dword [rsp + 0x50], eax
jmp 0x14003c0fe
cmp edi, 0xb
jne 0x14003a584
mov rcx, r15
call fcn.1400370d0
test eax, eax
jne case.default.0x140037b7b
mov rax, qword [rsp + 0x60]
lea rcx, [0x140000000]
movzx eax, byte [rcx + rax*8 + 0x4646d7]
mov ebx, dword [rcx + rax*4 + 0x4644b0]
mov rcx, r15
call fcn.1400370c0
xor edx, edx
cmp eax, 1
setne dl
add edx, ebx
lea rcx, [rbp + 0xd8]
call fcn.140037680
mov rcx, r15
call fcn.1400370c0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f220
mov rcx, rsi
call fcn.14003f1a0
mov rcx, rax
call fcn.14003f140
movzx r12d, al
mov dil, 1
lea r10, [0x140000000]
jmp 0x14003a6b9
cmp edi, 9
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.1400370d0
cmp eax, 2
jne case.default.0x140037b7b
mov rcx, r15
call fcn.1400370d0
test eax, eax
jne case.default.0x140037b7b
mov rcx, r15
call fcn.1400370c0
xor edx, edx
cmp eax, 1
setne dl
lea rcx, [rbp + 0xd8]
call fcn.140037630
mov rcx, r15
jmp 0x140039086
cmp edi, 0x11
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.1400370d0
cmp eax, 2
jne case.default.0x140037b7b
mov rcx, r15
call fcn.140037090
test al, al
je case.default.0x140037b7b
mov rcx, r15
call fcn.14003f1a0
mov rcx, rax
call fcn.1400370d0
cmp eax, 6
jne case.default.0x140037b7b
mov rcx, r15
call fcn.14003f1a0
mov rcx, rax
call fcn.140037190
test al, al
jne case.default.0x140037b7b
mov rcx, r15
call fcn.1400370c0
mov ebx, eax
test eax, eax
je 0x14003b17f
mov r12, r15
xor edx, edx
cmp eax, 1
setne dl
lea rcx, [rbp + 0xd8]
call fcn.140037630
mov edx, ebx
lea rcx, [rbp + 0xd8]
call fcn.14003f220
jmp 0x14003add1
cmp edi, eax
jne 0x14003a7c0
mov rcx, rsi
call fcn.1400373e0
test al, al
je 0x14003a874
mov rcx, rsi
call fcn.1400370d0
cmp eax, 7
jae 0x14003a86a
mov edx, eax
lea rax, [0x140000000]
mov edx, dword [rax + rdx*4 + 0x463150]
lea rcx, [rbp + 0xd8]
call fcn.140037680
lea r10, [0x140000000]
mov edi, dword [rsp + 0x54]
mov eax, dword [rbp + 0xd8]
shr eax, 0x15
and eax, 7
movzx eax, byte [rax + r10 + 0x463100]
mov byte [r14], al
mov eax, 0
setne al
add rax, r14
mov edx, dword [rbp + 0xd8]
or edx, r13d
shr edx, 0x18
cmp edx, 0x80
ja 0x14003c247
and edx, 0x7f
movzx ecx, dl
or cl, 0x40
mov byte [rax], cl
xor ecx, ecx
test edx, edx
setne cl
add rcx, rax
mov r9d, dword [rbp + 0xd8]
mov eax, r9d
shr rax, 8
and eax, 0x1f
lea r8, [rax*4 + 0x4630c0]
add r8, r10
movzx edx, byte [r8]
movzx eax, byte [r8 + 1]
mov byte [rcx], al
xor eax, eax
test dl, dl
setne al
add rax, rcx
movzx edx, byte [r8]
movzx ecx, byte [r8 + 2]
mov byte [rax], cl
xor ecx, ecx
cmp dl, 1
seta cl
mov byte [rcx + rax], r9b
lea r14, [rax + 1]
add r14, rcx
cmp dil, 4
movzx eax, dil
jb 0x14003a770
mov dword [r14], r12d
add r14, 4
shr r12, 0x20
lea eax, [rdi - 4]
test al, al
je 0x14003938b
mov byte [r14], r12b
inc r14
shr r12, 8
add al, 0xff
je 0x14003938b
mov byte [r14], r12b
inc r14
shr r12, 8
add al, 0xff
je 0x14003938b
mov byte [r14], r12b
inc r14
mov rbx, qword [rbp + 0xc0]
cmp al, 1
je 0x140039392
shr r12, 8
mov byte [r14], r12b
inc r14
jmp 0x140039392
cmp edi, 3
jne 0x14003a8d3
mov rcx, rsi
call fcn.14003f1a0
mov rcx, rax
call fcn.1400371e0
mov r12, rax
mov dil, 4
mov rcx, rax
call fcn.14003f100
test al, al
je 0x14003a806
mov edx, 0x20
mov ecx, r13d
call fcn.14003f190
movzx edi, dil
mov edx, 1
test al, al
cmove edi, edx
mov edx, 0x68
mov eax, 0x6a
cmp dil, 1
cmove edx, eax
lea rcx, [rbp + 0xd8]
call fcn.140037680
lea r10, [0x140000000]
jmp 0x14003a6b9
cmp edi, eax
jne 0x14003a8d3
mov rcx, rsi
call fcn.1400373e0
test al, al
je 0x14003a874
mov rcx, rsi
call fcn.1400370d0
cmp eax, 2
je 0x14003a86a
cmp eax, 7
jae 0x14003a86a
mov edx, eax
lea rax, [0x140000000]
mov edx, dword [rax + rdx*4 + 0x463630]
jmp 0x14003a6a2
mov ecx, 0x31
jmp 0x140038527
mov rcx, rsi
call fcn.1400370c0
cmp eax, 2
jb case.default.0x140037b7b
mov rax, qword [rsp + 0x60]
lea rcx, [0x140000000]
movzx edx, byte [rcx + rax*8 + 0x4646d7]
mov edx, dword [rcx + rdx*4 + 0x4644b0]
lea rcx, [rbp + 0xd8]
call fcn.140037680
mov rcx, rsi
call fcn.1400370c0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f220
mov rcx, rsi
call fcn.1400370d0
mov dword [rsp + 0x50], eax
jmp 0x14003b2cc
cmp edi, 2
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.1400370c0
test eax, eax
je 0x14003b17f
mov rcx, rsi
call fcn.1400370c0
cmp eax, edi
je 0x14003a916
mov rcx, rsi
call fcn.1400370c0
mov ebx, eax
mov rcx, qword [rbp + 0xc0]
call fcn.140037310
cmp ebx, eax
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.1400370c0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f220
mov r13, rsi
jmp 0x14003c101
test edi, edi
jne 0x14003a94b
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.140037630
jmp 0x14003a6ae
cmp edi, 3
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.14003f1a0
mov rcx, rax
call fcn.1400371e0
mov r12, rax
test rax, rax
jne 0x14003a98f
lea edx, [rdi + 0x1d]
mov ecx, r13d
call fcn.14003f190
test al, al
jne 0x14003a98f
lea edx, [rdi - 2]
lea rcx, [rbp + 0xd8]
call fcn.140037630
jmp 0x14003a6ae
mov dil, 2
lea r10, [0x140000000]
jmp 0x14003a6b9
mov eax, dword [rsi]
and al, 7
mov rcx, rsi
cmp al, 1
jne 0x14003aa88
call fcn.1400370c0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f1d0
mov rcx, rsi
call fcn.1400370d0
mov dword [rsp + 0x5c], eax
mov rcx, rsi
call fcn.1400370c0
cmp eax, 1
jne 0x14003aa0a
mov eax, dword [rsi]
and eax, 0xff000fff
cmp eax, 0x1000021
je 0x14003a9fb
xor eax, eax
mov ecx, 0x40000000
cmp dword [rsp + 0x5c], 4
cmovae eax, ecx
or r13d, eax
jmp 0x14003aa05
bts r13d, 0x1f
add dword [rsp + 0x5c], 4
mov dword [rsp + 0x58], r13d
cmp edi, 9
jne 0x14003aa34
mov rcx, r15
call fcn.1400370d0
cmp eax, 1
jne case.default.0x140037b7b
lea edx, [rdi - 7]
lea rcx, [rbp + 0xd8]
call fcn.140037630
jmp case.0x140037b7b.63
cmp edi, 0x19
jne case.default.0x140037b7b
mov rcx, r15
call fcn.14003f1a0
mov rcx, rax
call fcn.1400371e0
movzx r12d, al
xor dil, dil
cmp r12, 1
jne 0x14003aa6f
lea edx, [r12 + 0x1f]
mov ecx, r13d
call fcn.14003f190
test al, al
je 0x14003804d
mov edx, reloc.WS2_32.dll_recv
lea rcx, [rbp + 0xd8]
call fcn.140037690
mov dil, 1
jmp 0x14003804d
call fcn.1400370c0
test eax, eax
je 0x14003b17f
mov rcx, rsi
call fcn.1400370c0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f1d0
cmp edi, 0xa
jne 0x14003aad8
mov rcx, r15
call fcn.1400370d0
cmp eax, 1
jne case.default.0x140037b7b
lea edx, [rdi - 8]
lea rcx, [rbp + 0xd8]
call fcn.140037630
mov r13, rsi
jmp 0x14003c101
cmp edi, 0x1a
jne case.default.0x140037b7b
mov r13, rsi
mov rcx, r15
call fcn.14003f1a0
mov rcx, rax
call fcn.1400371e0
movzx r12d, al
mov byte [rsp + 0x54], 0
mov edi, dword [rsp + 0x58]
cmp r12, 1
jne 0x14003ab1b
lea edx, [r12 + 0x1f]
mov ecx, edi
call fcn.14003f190
test al, al
je 0x14003c105
mov edx, reloc.WS2_32.dll_recv
lea rcx, [rbp + 0xd8]
call fcn.140037690
mov byte [rsp + 0x54], 1
jmp 0x14003c105
cmp edi, eax
jne 0x14003ab93
mov rcx, rsi
call fcn.1400370d0
mov edx, eax
mov dword [rsp + 0x5c], eax
mov ecx, dword [rsi]
and ecx, 0xff000fff
mov edi, dword [rsp + 0x54]
mov rbx, qword [rbp + 0xe0]
cmp ecx, 0x1000021
je 0x14003ab7d
xor ecx, ecx
mov eax, 0x40000000
cmp edx, 4
cmovae ecx, eax
or r13d, ecx
mov dword [rsp + 0x58], r13d
jmp 0x140038054
bts r13d, 0x1f
mov dword [rsp + 0x58], r13d
add edx, 4
mov dword [rsp + 0x5c], edx
jmp 0x140038054
cmp edi, 2
jne case.default.0x140037b7b
mov r13, rsi
jmp 0x14003c101
cmp edi, 0xc9
jne 0x14003abf9
mov rcx, rsi
call fcn.1400370c0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f1b0
mov rcx, r15
call fcn.1400370d0
mov dword [rsp + 0x50], eax
mov rcx, rsi
call fcn.1400370d0
mov dword [rsp + 0x5c], eax
mov rcx, qword [rbp + 0xe0]
call fcn.14003f1a0
mov rcx, rax
call fcn.1400371e0
mov r12, rax
mov dil, 1
jmp 0x14003804d
cmp edi, 0xca
jne 0x14003ac47
mov rcx, r15
call fcn.1400370c0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f1b0
mov rcx, r15
call fcn.1400370d0
mov dword [rsp + 0x50], eax
mov r13, rsi
mov rcx, qword [rbp + 0xe0]
call fcn.14003f1a0
mov rcx, rax
call fcn.1400371e0
mov r12, rax
mov byte [rsp + 0x54], 1
jmp 0x14003c101
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.140037630
cmp edi, 0x49
jne 0x14003ac77
mov rcx, qword [rbp + 0xe0]
call fcn.1400370d0
cmp eax, 1
jne case.default.0x140037b7b
mov rcx, rsi
jmp 0x1400387b9
cmp edi, 0x4a
jne case.default.0x140037b7b
mov rcx, qword [rbp + 0xe0]
call fcn.1400370d0
cmp eax, 1
jne case.default.0x140037b7b
mov rcx, r15
jmp 0x1400387e2
cmp edi, 0x11
jne case.default.0x140037b7b
mov r12, r15
mov rcx, r15
call fcn.14003f1a0
mov rcx, rax
call fcn.1400371d0
test eax, eax
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.14003f1a0
mov rcx, rax
xor edx, edx
call fcn.140037130
test al, al
je case.default.0x140037b7b
mov rcx, rsi
call fcn.1400370c0
mov ebx, eax
mov rcx, r15
call fcn.1400370b0
test al, al
je 0x14003adc3
mov rcx, r15
jmp 0x14003adb6
cmp edi, 0xa
jne case.default.0x140037b7b
mov r12, rsi
mov rcx, rsi
call fcn.14003f1a0
mov rcx, rax
call fcn.1400371d0
test eax, eax
jne case.default.0x140037b7b
mov rcx, r15
call fcn.14003f1a0
mov rcx, rax
xor edx, edx
call fcn.140037130
test al, al
je case.default.0x140037b7b
mov rcx, r15
call fcn.1400370c0
mov ebx, eax
mov rcx, rsi
call fcn.1400370b0
test al, al
je 0x14003adc3
jmp 0x14003adb3
cmp edi, 0x12
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.14003f1a0
mov rcx, rax
call fcn.140037180
mov ebx, eax
mov rcx, r15
call fcn.14003f1a0
mov rcx, rax
call fcn.140037180
cmp ebx, eax
jne case.default.0x140037b7b
mov r12, r15
mov rcx, rsi
call fcn.14003f1a0
mov rcx, rax
call fcn.140037190
test al, al
jne case.default.0x140037b7b
mov rcx, r15
call fcn.1400370c0
mov ebx, eax
test eax, eax
je 0x14003b17f
mov rcx, rsi
call fcn.1400370c0
cmp eax, ebx
jne 0x14003b21d
mov edx, ebx
lea rcx, [rbp + 0xd8]
call fcn.14003f1d0
mov rcx, r12
call fcn.14003f1a0
mov rcx, rax
call fcn.140037180
mov eax, eax
lea rdi, [0x140000000]
movzx ebx, byte [rax + rdi + 0x463170]
mov dword [rbp + 0xd0], ebx
mov rcx, r12
call fcn.14003f1a0
mov rcx, rax
call fcn.140037190
test al, al
jne case.default.0x140037b7b
test bl, 2
jne case.default.0x140037b7b
mov eax, dword [rbp + 0xd8]
shr eax, 0x15
and eax, 7
movzx eax, byte [rax + rdi + 0x463100]
mov byte [r14], al
mov eax, 0
setne al
lea rbx, [rax + r14]
mov edx, r13d
lea rcx, [rbp + 0xd8]
call fcn.140037670
cmp eax, 0x80
ja 0x14003c247
and eax, 0x7f
movzx edx, al
or dl, 0x40
mov byte [rbx], dl
xor edi, edi
test eax, eax
setne dil
add rdi, rbx
mov rcx, r12
call fcn.14003f1a0
mov rcx, rax
call fcn.1400374a0
mov ecx, eax
lea r14, [0x140000000]
movzx eax, byte [rcx + r14 + 0x463108]
mov byte [rdi], al
xor ebx, ebx
test al, al
setne bl
add rbx, rdi
mov rcx, qword [rbp + 0xc0]
call fcn.1400028b0
and eax, dword [rbp + 0xd0]
mov byte [rbx], 0x67
mov ecx, 0
setne cl
add rcx, rbx
mov r9d, dword [rbp + 0xd8]
mov eax, r9d
shr rax, 8
and eax, 0x1f
lea r8, [r14 + 0x4630c0]
lea r8, [r8 + rax*4]
movzx edx, byte [r8]
movzx eax, byte [r8 + 1]
mov byte [rcx], al
xor eax, eax
test dl, dl
setne al
add rax, rcx
movzx edx, byte [r8]
movzx ecx, byte [r8 + 2]
mov byte [rax], cl
xor ecx, ecx
cmp dl, 1
seta cl
mov byte [rcx + rax], r9b
lea r14, [rax + 1]
add r14, rcx
jmp case.0x140037b7b.0
cmp edi, 9
jne 0x14003afe1
mov rcx, rsi
call fcn.1400370c0
mov ebx, eax
mov rcx, r15
call fcn.1400370c0
cmp ebx, eax
jne 0x14003b21d
mov rcx, rsi
call fcn.1400370c0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f1d0
mov rcx, rsi
call fcn.1400370d0
mov dword [rsp + 0x5c], eax
mov rcx, r15
call fcn.1400370d0
mov dword [rsp + 0x50], eax
mov rcx, rsi
call fcn.1400370c0
cmp eax, 1
jne case.0x140037b7b.63
mov eax, dword [rsi]
and eax, 0xff000fff
mov ecx, 0x40000000
cmp eax, 0x1000021
je 0x14003af92
xor eax, eax
cmp dword [rsp + 0x5c], 4
cmovae eax, ecx
or r13d, eax
jmp 0x14003af9c
bts r13d, 0x1f
add dword [rsp + 0x5c], 4
mov eax, dword [r15]
and eax, 0xff000fff
mov edi, dword [rsp + 0x54]
mov rbx, qword [rbp + 0xe0]
cmp eax, 0x1000021
je 0x14003afcd
xor eax, eax
cmp dword [rsp + 0x50], 4
cmovae eax, ecx
or r13d, eax
mov dword [rsp + 0x58], r13d
jmp 0x140038054
bts r13d, 0x1f
mov dword [rsp + 0x58], r13d
add dword [rsp + 0x50], 4
jmp 0x140038054
cmp edi, 0xa
jne 0x14003b024
mov rcx, r15
call fcn.1400370c0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f1d0
mov rcx, r15
call fcn.1400370d0
mov dword [rsp + 0x50], eax
mov r13, rsi
mov rcx, r15
call fcn.1400370c0
cmp eax, 1
jne 0x14003c101
mov eax, dword [r15]
jmp 0x1400383b5
mov rax, qword [rsp + 0x60]
movzx edx, byte [r10 + rax*8 + 0x4646d7]
mov edx, dword [r10 + rdx*4 + 0x4644b0]
lea rcx, [rbp + 0xd8]
call fcn.140037680
lea rcx, [rbp + 0xd8]
call fcn.1400374a0
mov dword [rsp + 0x50], eax
cmp edi, 0x19
jne 0x14003b16a
mov rcx, rsi
call fcn.1400370c0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f1d0
mov rcx, rsi
call fcn.1400370d0
mov dword [rsp + 0x5c], eax
mov rcx, rsi
call fcn.1400370c0
cmp eax, 1
jne 0x14003b0d6
mov rcx, rsi
call fcn.140037370
test al, al
jne 0x14003b0ae
xor eax, eax
mov ecx, 0x40000000
cmp dword [rsp + 0x5c], 4
cmovae eax, ecx
or r13d, eax
jmp 0x14003b0b8
bts r13d, 0x1f
add dword [rsp + 0x5c], 4
mov dword [rsp + 0x58], r13d
mov rcx, r15
call fcn.14003f1a0
mov rcx, rax
call fcn.14003f140
movzx r12d, al
mov dil, 1
jmp 0x14003b10b
mov rcx, r15
call fcn.14003f1a0
mov rcx, rax
call fcn.1400371e0
mov r12, rax
mov dword [rbp - 8], 4
mov rcx, rsi
call fcn.1400370c0
mov dword [rbp - 0x48], eax
lea rdx, [rbp - 8]
lea rcx, [rbp - 0x48]
call fcn.14003f180
movzx edi, al
cmp dword [rsp + 0x5c], 0
jne 0x14003804d
mov edx, 0x20
mov ecx, r13d
call fcn.14003f190
test al, al
jne 0x14003804d
mov edx, 0x8200000
lea rcx, [rbp + 0xd8]
call fcn.1400376a0
mov rcx, rsi
call fcn.1400370c0
xor edx, edx
cmp eax, 1
setne dl
add edx, 0xa8
lea rcx, [rbp + 0xd8]
call fcn.1400376b0
lea r10, [0x140000000]
jmp 0x14003a6b9
cmp edi, 0x1a
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.1400370c0
test eax, eax
jne 0x14003b189
mov eax, 0x34
jmp 0x14003852c
mov rcx, rsi
call fcn.1400370c0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f1d0
mov r13, rsi
mov rcx, r15
call fcn.14003f1a0
mov rcx, rax
call fcn.1400371e0
mov r12, rax
mov dword [rbp - 0x44], 4
mov rcx, rsi
call fcn.1400370c0
mov dword [rbp - 0x40], eax
lea rdx, [rbp - 0x44]
lea rcx, [rbp - 0x40]
call fcn.14003f180
mov byte [rsp + 0x54], al
jmp 0x14003c101
cmp edi, 0x11
je 0x14003837d
cmp edi, 9
jne 0x14003b3d1
mov rcx, rsi
call fcn.1400370d0
mov dword [rsp + 0x5c], eax
mov rcx, r15
call fcn.1400370d0
mov dword [rsp + 0x50], eax
mov rcx, rsi
call fcn.1400370c0
mov ebx, eax
mov rcx, r15
call fcn.1400370c0
cmp ebx, eax
je 0x14003b227
mov eax, gethostname
jmp 0x14003852c
cmp ebx, 1
je 0x14003af70
cmp dword [rsp + 0x60], 0x668
jne 0x14003b3be
cmp dword [rsp + 0x50], 0
je 0x14003b250
cmp dword [rsp + 0x5c], 0
jne 0x14003b3be
mov rcx, qword [rbp + 0xc0]
call fcn.1400372f0
test al, al
je 0x14003b27f
mov eax, dword [rsp + 0x5c]
cmp dword [rsp + 0x50], eax
jne 0x14003b27f
cmp ebx, 4
jb 0x14003b27f
cmp ebx, 8
jne 0x14003b3be
mov edx, 0x8000000
jmp 0x14003b2af
mov edx, 0x20
mov ecx, r13d
call fcn.14003f190
test al, al
jne 0x14003b3be
mov eax, dword [rsp + 0x5c]
add dword [rsp + 0x50], eax
mov edx, ebx
lea rcx, [rbp + 0xd8]
call fcn.14003f1d0
mov edx, 0x8200000
lea rcx, [rbp + 0xd8]
call fcn.1400376a0
mov edx, 0x90
lea rcx, [rbp + 0xd8]
call fcn.1400376b0
mov eax, dword [rbp + 0xd8]
shr eax, 0x15
and eax, 7
lea r8, [0x140000000]
movzx eax, byte [rax + r8 + 0x463100]
mov byte [r14], al
mov eax, 0
setne al
lea rdi, [rax + r14]
mov edx, r13d
lea rcx, [rbp + 0xd8]
call fcn.140037670
mov ecx, dword [rsp + 0x50]
shr ecx, 3
or ecx, eax
cmp ecx, 0x80
ja 0x14003c247
and ecx, 0x7f
movzx eax, cl
or al, 0x40
mov byte [rdi], al
xor ebx, ebx
test ecx, ecx
setne bl
add rbx, rdi
mov edx, dword [rsp + 0x50]
and edx, 7
mov dword [rsp + 0x50], edx
lea rcx, [rbp + 0xd8]
call fcn.140037630
mov r9d, dword [rbp + 0xd8]
mov eax, r9d
shr rax, 8
and eax, 0x1f
lea rcx, [0x140000000]
lea r8, [rcx + 0x4630c0]
lea r8, [r8 + rax*4]
movzx ecx, byte [r8]
movzx eax, byte [r8 + 1]
mov byte [rbx], al
xor eax, eax
test cl, cl
setne al
add rax, rbx
movzx edx, byte [r8]
movzx ecx, byte [r8 + 2]
mov byte [rax], cl
xor ecx, ecx
cmp dl, 1
seta cl
mov byte [rcx + rax], r9b
lea r14, [rax + 1]
add r14, rcx
mov edi, dword [rsp + 0x54]
movzx eax, dil
cmp dil, 4
jb 0x14003a770
mov edx, r12d
mov rcx, r14
call fcn.14003f2d0
jmp 0x14003a765
mov edx, ebx
lea rcx, [rbp + 0xd8]
call fcn.14003f1d0
jmp case.0x140037b7b.63
cmp edi, 0xa
jne case.default.0x140037b7b
jmp 0x14003afe6
cmp edi, 9
jne 0x14003b44c
mov rcx, rsi
call fcn.1400370d0
mov dword [rsp + 0x50], eax
mov rcx, r15
call fcn.1400370d0
mov dword [rsp + 0x5c], eax
mov edx, 0x100
mov ecx, r13d
call fcn.14003f190
test al, al
je case.0x140037b7b.63
mov rax, qword [rsp + 0x60]
lea rcx, [0x140000000]
movzx edx, byte [rcx + rax*8 + 0x4646d7]
mov edx, dword [rcx + rdx*4 + 0x4644b0]
lea rcx, [rbp + 0xd8]
call fcn.140037680
lea rdx, [rsp + 0x5c]
lea rcx, [rsp + 0x50]
call fcn.14003f170
jmp case.0x140037b7b.63
cmp edi, 0x11
jne 0x14003b462
mov rcx, rsi
call fcn.1400370d0
mov dword [rsp + 0x50], eax
jmp 0x14003c0fe
cmp edi, 0xa
jne case.default.0x140037b7b
mov rax, qword [rsp + 0x60]
movzx edx, byte [r10 + rax*8 + 0x4646d7]
mov edx, dword [r10 + rdx*4 + 0x4644b0]
lea rcx, [rbp + 0xd8]
call fcn.140037680
mov r13, rsi
mov rcx, r15
call fcn.1400370d0
mov dword [rsp + 0x50], eax
jmp 0x14003c101
cmp edi, 9
jne 0x14003b54a
mov rcx, rsi
call fcn.1400370d0
mov dword [rsp + 0x50], eax
mov rcx, r15
call fcn.1400370d0
mov ecx, eax
mov dword [rsp + 0x5c], eax
mov eax, dword [rsp + 0x50]
test eax, eax
je 0x14003b57b
test ecx, ecx
jne case.default.0x140037b7b
mov dword [rsp + 0x5c], eax
mov edx, 0xff
lea rcx, [rbp + 0xd8]
call fcn.1400376c0
mov edx, dword [rsp + 0x5c]
add edx, 0x37000
add edx, eax
lea rcx, [rbp + 0xd8]
call fcn.140037680
mov eax, dword [rbp + 0xd8]
shr eax, 0x15
and eax, 7
lea rcx, [0x140000000]
movzx eax, byte [rax + rcx + 0x463100]
mov byte [r14], al
mov eax, 0
setne al
add r14, rax
mov eax, dword [rbp + 0xd8]
shr eax, 0xa
mov byte [r14], al
movzx eax, byte [rbp + 0xd8]
mov byte [r14 + 1], al
jmp 0x140039383
cmp edi, 2
je 0x14003b5a2
mov rbx, qword [rbp + 0xe0]
mov eax, 0x1a
jmp 0x140038533
test edi, edi
jne 0x14003b569
mov rcx, rax
jmp 0x14003b577
cmp edi, eax
jne 0x14003b599
mov rcx, rsi
call fcn.1400370d0
mov ecx, eax
mov dword [rsp + 0x5c], eax
mov eax, dword [rbp + 0xd8]
shr eax, 0xa
movzx eax, al
add eax, 0x36000
add ecx, eax
mov dword [rbp + 0xd8], ecx
jmp case.0x140037b7b.65
cmp edi, 2
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.1400370c0
mov edx, 0xdc
mov ecx, 0xd8
cmp eax, 4
cmove edx, ecx
lea rcx, [rbp + 0xd8]
call fcn.140037680
mov edx, 0xffff1fff
lea rcx, [rbp + 0xd8]
call fcn.1400376a0
mov r13, rsi
jmp 0x14003c101
cmp edi, 2
jne 0x14003b6a8
mov r13, rsi
mov rcx, rsi
call fcn.1400370c0
mov rbx, qword [rsp + 0x70]
cmp eax, 4
jne 0x14003b612
mov edx, 0x1000
mov rcx, rbx
call fcn.140037620
test al, al
jne 0x14003c101
mov rcx, rsi
call fcn.1400370c0
cmp eax, 8
jne 0x14003b646
mov edx, 0x2000
mov rcx, rbx
call fcn.140037620
test al, al
je 0x14003b646
mov edx, 4
lea rcx, [rbp + 0xd8]
call fcn.140037630
jmp 0x14003c101
mov rcx, rsi
call fcn.1400370c0
cmp eax, 0xa
jne case.default.0x140037b7b
mov edx, 0x800
mov rcx, rbx
call fcn.140037620
test al, al
je case.default.0x140037b7b
mov rax, qword [rsp + 0x60]
lea rcx, [0x140000000]
movzx edx, byte [rcx + rax*8 + 0x4646d7]
mov edx, dword [rcx + rdx*4 + 0x4644b0]
lea rcx, [rbp + 0xd8]
call fcn.140037680
lea rcx, [rbp + 0xd8]
call fcn.1400374a0
mov dword [rsp + 0x50], eax
jmp 0x14003c101
cmp edi, eax
jne case.default.0x140037b7b
mov r9, qword [rsp + 0x60]
cmp r9d, 0xce
jne 0x14003b6d1
mov rcx, rsi
call fcn.1400370d0
lea edx, [rax + 0x364c0]
jmp 0x14003b4f9
cmp r9d, 0xec
jne 0x14003b6ed
mov rcx, rsi
call fcn.1400370d0
lea edx, [rax + 0x374d0]
jmp 0x14003b4f9
cmp r9d, 0xef
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.1400370d0
lea edx, [rax + 0x374d8]
jmp 0x14003b4f9
cmp edi, 2
jne case.default.0x140037b7b
mov edx, 0xffff1fff
lea rcx, [rbp + 0xd8]
call fcn.1400376a0
mov r13, rsi
mov rcx, rsi
call fcn.1400370c0
mov rbx, qword [rsp + 0x70]
cmp eax, edi
jne 0x14003b760
mov edx, 0x800
mov rcx, rbx
call fcn.140037620
test al, al
je 0x14003b760
lea edx, [rdi + 2]
lea rcx, [rbp + 0xd8]
call fcn.140037630
jmp 0x14003c101
mov rcx, rsi
call fcn.1400370c0
cmp eax, 4
jne 0x14003b782
mov edx, 0x1000
mov rcx, rbx
call fcn.140037620
test al, al
jne 0x14003c101
mov rcx, rsi
call fcn.1400370c0
cmp eax, 8
jne case.default.0x140037b7b
mov edx, 0x2000
mov rcx, rbx
call fcn.140037620
test al, al
je case.default.0x140037b7b
mov rax, qword [rsp + 0x60]
lea rcx, [0x140000000]
movzx edx, byte [rcx + rax*8 + 0x4646d7]
mov edx, dword [rcx + rdx*4 + 0x4644b0]
and edx, 0xffff1fff
jmp 0x14003b687
test edi, edi
jne case.0x140037b7b.70
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.140037630
jmp case.0x140037b7b.65
cmp edi, eax
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.1400370d0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.140037630
jmp case.0x140037b7b.65
cmp edi, eax
jne 0x14003b83c
mov rcx, rsi
call fcn.1400370d0
test eax, eax
jne case.default.0x140037b7b
mov rax, qword [rsp + 0x60]
lea rcx, [0x140000000]
movzx edx, byte [rcx + rax*8 + 0x4646d7]
mov edx, dword [rcx + rdx*4 + 0x4644b0]
jmp 0x14003b4f9
cmp edi, 2
jne case.default.0x140037b7b
mov edx, 0xffff1fff
lea rcx, [rbp + 0xd8]
call fcn.1400376a0
mov r13, rsi
jmp 0x14003c101
cmp edi, 0xc9
jne 0x14003b89c
mov rcx, r15
call fcn.1400373b0
movzx edx, al
lea rcx, [rbp + 0xd8]
call fcn.14003f270
mov rcx, qword [rbp + 0xe0]
call fcn.14003f1a0
mov rcx, rax
call fcn.1400371e0
mov r12, rax
mov dil, 1
jmp 0x140038bd3
cmp edi, 0xca
jne case.default.0x140037b7b
mov rax, qword [rsp + 0x60]
movzx edx, byte [r10 + rax*8 + 0x4646d7]
mov edx, dword [r10 + rdx*4 + 0x4644b0]
lea rcx, [rbp + 0xd8]
call fcn.140037680
mov rcx, r15
call fcn.1400373b0
movzx edx, al
lea rcx, [rbp + 0xd8]
call fcn.14003f270
mov rcx, qword [rbp + 0xe0]
call fcn.14003f1a0
mov rcx, rax
call fcn.1400371e0
mov r12, rax
mov byte [rsp + 0x54], 1
mov rcx, r15
call fcn.1400370d0
mov dword [rsp + 0x50], eax
mov r13, rsi
jmp 0x14003c101
cmp edi, 0xc9
jne 0x14003b967
mov rcx, r15
call fcn.1400373b0
movzx edx, al
lea rcx, [rbp + 0xd8]
call fcn.14003f270
mov rcx, qword [rbp + 0xe0]
call fcn.14003f1a0
mov rcx, rax
call fcn.1400371e0
mov r12, rax
mov dil, 1
mov rcx, r15
call fcn.1400370d0
mov rcx, rsi
mov dword [rsp + 0x50], eax
call fcn.1400370d0
mov dword [rsp + 0x5c], eax
jmp 0x14003804d
cmp edi, 0xca
jne case.default.0x140037b7b
jmp 0x14003b8ca
cmp edi, 9
jne 0x14003b9ed
mov rcx, rsi
call fcn.1400370d0
mov dword [rsp + 0x50], eax
mov rcx, r15
call fcn.1400370d0
mov dword [rsp + 0x5c], eax
mov edx, 0x100
mov ecx, r13d
call fcn.14003f190
test al, al
je case.0x140037b7b.63
mov rax, qword [rsp + 0x60]
lea rcx, [0x140000000]
movzx eax, byte [rcx + rax*8 + 0x4646d7]
test al, al
je case.0x140037b7b.63
mov edx, dword [rcx + rax*4 + 0x4644b0]
lea rcx, [rbp + 0xd8]
call fcn.140037680
lea rdx, [rsp + 0x5c]
lea rcx, [rsp + 0x50]
call fcn.14003f170
jmp case.0x140037b7b.63
cmp edi, 0x11
jne 0x14003ba03
mov rcx, rsi
call fcn.1400370d0
mov dword [rsp + 0x50], eax
jmp 0x14003c0fe
mov rax, qword [rsp + 0x60]
movzx edx, byte [r10 + rax*8 + 0x4646d7]
mov edx, dword [r10 + rdx*4 + 0x4644b0]
lea rcx, [rbp + 0xd8]
call fcn.140037680
cmp edi, 0xa
jne case.default.0x140037b7b
mov rcx, r15
call fcn.1400370d0
mov dword [rsp + 0x50], eax
mov r13, rsi
jmp 0x14003c101
cmp edi, 0x11
jne 0x14003ba5d
mov rcx, rsi
call fcn.1400370c0
cmp eax, 1
je case.default.0x140037b7b
jmp 0x140039943
mov rax, qword [rsp + 0x60]
movzx edx, byte [r10 + rax*8 + 0x4646d7]
mov edx, dword [r10 + rdx*4 + 0x4644b0]
lea rcx, [rbp + 0xd8]
call fcn.140037680
cmp edi, 0xa
jne case.default.0x140037b7b
mov rcx, r15
call fcn.1400370c0
cmp eax, 1
je case.default.0x140037b7b
mov rcx, r15
jmp 0x1400387e2
cmp edi, 9
jne 0x14003bb73
mov rcx, rsi
call fcn.1400370d0
mov dword [rsp + 0x50], eax
mov rcx, r15
call fcn.1400370d0
mov dword [rsp + 0x5c], eax
mov rcx, rsi
call fcn.1400373c0
test al, al
je 0x14003bb08
mov rcx, r15
call fcn.1400373c0
test al, al
je 0x14003bb08
mov edx, 0x16f
lea rcx, [rbp + 0xd8]
call fcn.140037680
mov edx, 0x100
mov ecx, r13d
call fcn.14003f190
test al, al
je case.0x140037b7b.63
lea edx, [rdi + 7]
jmp 0x140038349
mov rcx, rsi
call fcn.1400373b0
test al, al
je 0x14003bc28
mov rcx, r15
call fcn.1400373b0
test al, al
je 0x14003bc28
mov edx, 0x40017e
lea rcx, [rbp + 0xd8]
call fcn.140037680
mov edx, 0x100
mov ecx, r13d
call fcn.14003f190
test al, al
je case.0x140037b7b.63
mov edx, 0x2001d6
lea rcx, [rbp + 0xd8]
call fcn.140037680
lea rdx, [rsp + 0x5c]
lea rcx, [rsp + 0x50]
call fcn.14003f170
jmp case.0x140037b7b.63
cmp edi, 0x11
jne 0x14003bbcb
mov rcx, rsi
call fcn.1400370d0
mov dword [rsp + 0x50], eax
mov r13, r15
mov rcx, rsi
call fcn.1400373c0
test al, al
je 0x14003bba9
mov edx, 0x16f
lea rcx, [rbp + 0xd8]
call fcn.140037680
jmp 0x14003c101
mov rcx, rsi
call fcn.1400373b0
test al, al
je 0x14003bc23
mov edx, 0x40017e
lea rcx, [rbp + 0xd8]
call fcn.140037680
jmp 0x14003c101
cmp edi, 0xa
jne 0x14003bc28
mov rcx, r15
call fcn.1400370d0
mov dword [rsp + 0x50], eax
mov r13, rsi
mov rcx, r15
call fcn.1400373c0
test al, al
je 0x14003bc01
mov edx, 0x17f
lea rcx, [rbp + 0xd8]
call fcn.140037680
jmp 0x14003c101
mov rcx, r15
call fcn.1400373b0
test al, al
je 0x14003bc23
mov edx, 0x2001d6
lea rcx, [rbp + 0xd8]
call fcn.140037680
jmp 0x14003c101
mov r13d, dword [rsp + 0x58]
mov ebx, 0x8000000
mov edx, ebx
lea rcx, [rbp + 0xd8]
call fcn.1400376b0
jmp 0x14003bc42
mov ebx, 0x8000000
mov eax, dword [rsi + 4]
mov dword [rsp + 0x50], eax
mov ecx, dword [rsi]
and ecx, 0xff000fff
xor eax, eax
mov edx, 0x200000
cmp ecx, 0x10000161
cmove eax, edx
or dword [rbp + 0xd8], eax
cmp edi, 9
jne 0x14003bc80
mov rcx, r15
call fcn.140037110
test al, al
je 0x14003bc89
mov rcx, r15
jmp 0x140038040
cmp edi, 0x11
je 0x14003c0fe
mov edx, ebx
lea rcx, [rbp + 0xd8]
call fcn.1400376a0
mov rax, qword [rsp + 0x60]
lea rcx, [0x140000000]
movzx edx, byte [rcx + rax*8 + 0x4646d7]
mov edx, dword [rcx + rdx*4 + 0x4644b0]
lea rcx, [rbp + 0xd8]
call fcn.1400376b0
mov rcx, r15
call fcn.1400370d0
mov dword [rsp + 0x50], eax
mov rcx, r15
call fcn.1400373b0
movzx edx, al
lea rcx, [rbp + 0xd8]
call fcn.14003f270
cmp edi, 9
jne 0x14003bcf3
mov rcx, rsi
call fcn.140037110
jmp 0x140038035
cmp edi, 0xa
jne case.default.0x140037b7b
mov r13, rsi
jmp 0x14003c101
cmp dword [r8], 0
je 0x14003bd1c
xor edx, edx
mov rcx, r8
call fcn.140037450
test al, al
je case.default.0x140037b7b
and edi, 0x3f
jmp case.0x140037b7b.73
mov rcx, r8
call fcn.140037070
test al, al
jne 0x14003bd1c
mov rbx, qword [rbp + 0xe0]
mov rcx, rbx
call fcn.140037090
test al, al
je 0x140037c3f
mov rcx, rbx
call fcn.14003f1a0
mov rcx, rax
call fcn.1400370d0
cmp eax, 7
jne 0x140037c3f
mov rcx, rbx
call fcn.14003f1a0
mov rcx, rax
call fcn.140037190
test al, al
jne 0x140037c3f
and edi, 0x3f
jmp case.0x140037b7b.73
mov rcx, r15
call fcn.1400370c0
cmp eax, 8
sete dl
lea rcx, [rbp + 0xd8]
call fcn.14003f260
mov ecx, dword [rsi]
and ecx, 0xff000fff
xor eax, eax
mov edx, 0x8000000
cmp ecx, 0x8000039
cmove eax, edx
or dword [rbp + 0xd8], eax
cmp edi, 9
jne 0x14003bdca
mov eax, dword [rsi + 4]
mov dword [rsp + 0x50], eax
mov eax, dword [r15 + 4]
jmp 0x140038045
cmp edi, 0x11
jne case.default.0x140037b7b
mov eax, dword [rsi + 4]
mov dword [rsp + 0x50], eax
jmp 0x14003c0fe
cmp edi, 9
jne 0x14003be1c
mov rcx, rsi
call fcn.1400373b0
movzx ebx, al
mov rcx, r15
call fcn.1400373b0
movzx edx, al
or edx, ebx
lea rcx, [rbp + 0xd8]
call fcn.14003f280
mov rcx, rsi
call fcn.1400370d0
mov dword [rsp + 0x50], eax
mov rcx, r15
jmp 0x140038040
cmp edi, 0x11
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.1400373b0
movzx edx, al
lea rcx, [rbp + 0xd8]
call fcn.14003f270
mov rcx, rsi
call fcn.1400370d0
mov dword [rsp + 0x50], eax
jmp 0x14003c0fe
cmp edi, 9
je 0x140038158
cmp edi, 0x11
je 0x140039959
mov rax, qword [rsp + 0x60]
movzx edx, byte [r10 + rax*8 + 0x4646d7]
mov edx, dword [r10 + rdx*4 + 0x4644b0]
lea rcx, [rbp + 0xd8]
call fcn.140037680
lea rcx, [rbp + 0xd8]
call fcn.1400374a0
mov dword [rsp + 0x50], eax
cmp edi, 0x19
jne case.default.0x140037b7b
mov rcx, r15
call fcn.14003f1a0
mov rcx, rax
call fcn.1400371e0
mov r12, rax
mov dil, 1
mov rcx, rsi
call fcn.1400370d0
mov dword [rsp + 0x5c], eax
jmp 0x14003804d
cmp edi, 9
je 0x14003bde4
cmp edi, 0x11
je 0x14003be25
mov rax, qword [rsp + 0x60]
movzx edx, byte [r10 + rax*8 + 0x4646d7]
mov edx, dword [r10 + rdx*4 + 0x4644b0]
lea rcx, [rbp + 0xd8]
call fcn.140037680
lea rcx, [rbp + 0xd8]
call fcn.1400374a0
mov dword [rsp + 0x50], eax
cmp edi, 0x19
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.1400373b0
movzx edx, al
lea rcx, [rbp + 0xd8]
call fcn.14003f270
jmp 0x14003be9a
mov rcx, r8
call fcn.14003f1a0
mov rcx, rax
call fcn.1400371e0
mov r12, rax
mov byte [rsp + 0x54], 1
cmp edi, 0xc9
je 0x140038158
cmp edi, 0xd1
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.1400370d0
mov dword [rsp + 0x50], eax
jmp 0x14003c0fe
mov rcx, r8
call fcn.14003f1a0
mov rcx, rax
call fcn.1400371e0
mov r12, rax
mov byte [rsp + 0x54], 1
cmp edi, 0xc9
je 0x14003bde4
cmp edi, 0xd1
jmp 0x14003be1f
mov rcx, rsi
call fcn.1400370d0
mov dword [rsp + 0x50], eax
mov rcx, r15
call fcn.1400370d0
mov dword [rsp + 0x5c], eax
cmp edi, 9
je case.0x140037b7b.63
cmp edi, 0xd9
jne case.default.0x140037b7b
mov rax, qword [rsp + 0x60]
lea rcx, [0x140000000]
movzx edx, byte [rcx + rax*8 + 0x4646d7]
mov edx, dword [rcx + rdx*4 + 0x4644b0]
lea rcx, [rbp + 0xd8]
call fcn.140037680
mov eax, dword [rsp + 0x50]
mov dword [rsp + 0x5c], eax
lea rcx, [rbp + 0xd8]
call fcn.1400374a0
mov dword [rsp + 0x50], eax
mov rcx, qword [rbp + 0xe0]
call fcn.14003f1a0
mov rcx, rax
call fcn.14003f140
mov rcx, r15
movzx ebx, al
call fcn.14003f1a0
mov rcx, rax
call fcn.14003f140
movzx r12d, al
shl rbx, 8
add r12, rbx
mov dil, 2
jmp 0x14003804d
mov rcx, qword [rbp + 0xe8]
call fcn.140037060
mov ebx, eax
shl ebx, 9
add ebx, edi
mov rcx, rsi
call fcn.1400370d0
mov dword [rsp + 0x50], eax
mov rcx, r15
call fcn.1400370d0
mov dword [rsp + 0x5c], eax
cmp ebx, 9
je case.0x140037b7b.63
cmp ebx, 0x6c9
jne case.default.0x140037b7b
mov rax, qword [rsp + 0x60]
lea rcx, [0x140000000]
movzx edx, byte [rcx + rax*8 + 0x4646d7]
mov edx, dword [rcx + rdx*4 + 0x4644b0]
lea rcx, [rbp + 0xd8]
call fcn.140037680
mov rcx, qword [rbp + 0xe8]
call fcn.14003f1a0
mov rcx, rax
call fcn.14003f140
mov rcx, qword [rbp + 0xe0]
jmp 0x14003c01d
movzx r12d, bl
mov byte [rsp + 0x54], al
mov edx, 0x10f
lea rcx, [rbp + 0xd8]
call fcn.140037680
mov rcx, rsi
call fcn.1400370d0
mov dword [rsp + 0x50], eax
cmp edi, 9
je 0x140038164
cmp edi, 0x11
jne case.default.0x140037b7b
mov r13, r15
mov edi, dword [rsp + 0x58]
mov ecx, dword [r13]
mov eax, ecx
shr rax, 3
and eax, 0x3ff
lea rdx, [0x140000000]
movzx r10d, byte [rax + rdx + 0x463170]
mov dword [rbp + 0xd0], r10d
shr rcx, 0x12
and ecx, 7
movzx eax, byte [rcx + rdx + 0x463108]
mov byte [r14], al
xor ecx, ecx
test al, al
setne cl
lea rbx, [rcx + r14]
mov rax, qword [rbp + 0xc0]
mov eax, dword [rax + 0x28]
mov byte [rbx], 0x67
test r10d, eax
mov eax, 0
setne al
add rax, rbx
mov ecx, dword [rbp + 0xd8]
shr ecx, 0x15
and ecx, 7
movzx ecx, byte [rcx + rdx + 0x463100]
mov byte [rax], cl
mov edx, 0
setne dl
add rdx, rax
mov r8d, dword [r13 + 4]
mov dword [rsp + 0x5c], r8d
mov r11d, dword [r13 + 8]
shr r8d, 1
and r8d, 4
mov eax, r11d
and eax, 8
or r8d, eax
shr r8d, 1
mov eax, dword [rsp + 0x50]
and eax, 8
or r8d, eax
shr r8d, 1
and r8d, r10d
mov eax, dword [rbp + 0xd8]
or eax, edi
shr eax, 0x18
or r8d, eax
cmp r8d, 0x80
ja 0x14003c247
and r8d, 0x7f
movzx eax, r8b
or al, 0x40
mov byte [rdx], al
xor ecx, ecx
test r8d, r8d
setne cl
add rcx, rdx
and dword [rsp + 0x50], 7
mov r9d, dword [rbp + 0xd8]
mov eax, r9d
shr rax, 8
and eax, 0x1f
lea r8, [0x140000000]
lea r8, [r8 + rax*4]
lea r8, [r8 + 0x4630c0]
movzx edx, byte [r8]
movzx eax, byte [r8 + 1]
mov byte [rcx], al
xor eax, eax
test dl, dl
setne al
add rax, rcx
movzx edx, byte [r8]
movzx ecx, byte [r8 + 2]
mov byte [rax], cl
xor ecx, ecx
cmp dl, 1
seta cl
mov byte [rcx + rax], r9b
lea r14, [rax + 1]
add r14, rcx
mov rdx, qword [rsp + 0x70]
jmp 0x14003dc54
mov rbx, qword [rbp + 0xe0]
mov eax, 0x25
jmp 0x140038533
mov edx, 0x1f00
lea rcx, [rbp + 0xd8]
call fcn.1400376c0
mov edi, eax
mov ecx, ebx
shr ecx, 6
and ecx, 0x1800000
and ebx, 0x600000
or ecx, ebx
shr ecx, 5
or edi, ecx
shr edi, 8
mov eax, r13d
shr eax, 0xa
test al, 1
je 0x14003c2c2
mov edx, 0x18
lea rcx, [rbp + 0xd8]
call fcn.1400376d0
mov edx, eax
or edx, 0x78e0c4
movzx eax, di
shl eax, 8
xor edx, eax
mov rcx, r14
call fcn.14003f2d0
add r14, 4
jmp case.0x140037b7b.0
mov byte [r14], 0xc5
mov eax, edi
shr eax, 8
xor al, dil
xor al, 0xf9
mov byte [r14 + 1], al
movzx eax, byte [rbp + 0xd8]
mov byte [r14 + 2], al
add r14, 3
jmp case.0x140037b7b.0
cmp edi, 9
jne 0x14003c3b5
mov rcx, rsi
call fcn.1400370d0
mov dword [rsp + 0x50], eax
mov rcx, r15
call fcn.1400370d0
mov dword [rsp + 0x5c], eax
mov rcx, r15
call fcn.140037110
test al, al
je 0x14003c341
mov rax, qword [rsp + 0x60]
lea rcx, [0x140000000]
movzx edx, byte [rcx + rax*8 + 0x4646d7]
mov edx, dword [rcx + rdx*4 + 0x4644b0]
lea rcx, [rbp + 0xd8]
call fcn.140037680
jmp case.0x140037b7b.93
mov rcx, rsi
call fcn.140037110
test al, al
je 0x14003c37b
mov rax, qword [rsp + 0x60]
lea rcx, [0x140000000]
movzx edx, byte [rcx + rax*8 + 0x4646d7]
mov edx, dword [rcx + rdx*4 + 0x4644b0]
inc edx
lea rcx, [rbp + 0xd8]
call fcn.140037680
jmp case.0x140037b7b.93
mov edx, 0x100
mov ecx, r13d
call fcn.14003f190
test al, al
je case.0x140037b7b.93
mov edx, 1
lea rcx, [rbp + 0xd8]
call fcn.140037630
lea rdx, [rsp + 0x5c]
lea rcx, [rsp + 0x50]
call fcn.14003f170
jmp case.0x140037b7b.93
cmp edi, 0x11
jne 0x14003c3ca
mov rcx, rsi
call fcn.1400370d0
mov r13, r15
jmp 0x14003d002
cmp edi, 0xa
jne case.default.0x140037b7b
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.140037630
jmp 0x14003cff7
cmp edi, eax
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.1400370d0
mov dword [rsp + 0x5c], eax
mov rcx, rsi
call fcn.14003f1a0
mov rcx, rax
call fcn.140037380
movzx edx, al
lea rcx, [rbp + 0xd8]
call fcn.14003f260
jmp case.0x140037b7b.93
cmp edi, 2
jne case.default.0x140037b7b
mov r13, rsi
jmp 0x14003d006
mov rcx, rsi
call fcn.1400370c0
mov ebx, eax
mov rcx, r15
call fcn.1400370c0
or ebx, eax
mov edx, ebx
shr rdx, 4
lea rax, [0x140000000]
mov edx, dword [rax + rdx*4 + 0x463570]
lea rcx, [rbp + 0xd8]
call fcn.1400376b0
cmp edi, 9
jne case.0x140037b7b.159
mov rcx, r15
call fcn.1400370d0
mov rcx, rsi
jmp 0x14003e78f
cmp edi, 0xa
jne case.default.0x140037b7b
mov rcx, r15
call fcn.1400370c0
mov eax, eax
shr rax, 4
lea rbx, [0x140000000]
mov eax, dword [rbx + rax*4 + 0x463570]
mov dword [rbp - 0x3c], eax
mov rcx, rsi
call fcn.14003f1a0
mov rcx, rax
call fcn.140037170
movzx eax, al
mov eax, dword [rbx + rax*4 + 0x4635f0]
mov dword [rbp - 0x38], eax
lea rdx, [rbp - 0x3c]
lea rcx, [rbp - 0x38]
call fcn.14003f160
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.1400376b0
jmp 0x14003cff7
cmp edi, 0xc9
jne 0x14003c531
mov edx, 0x2001c5
lea rcx, [rbp + 0xd8]
call fcn.140037680
mov rcx, rsi
call fcn.1400370d0
mov dword [rsp + 0x50], eax
mov rcx, r15
call fcn.1400370d0
mov dword [rsp + 0x5c], eax
mov rcx, qword [rbp + 0xe0]
call fcn.14003f1a0
mov rcx, rax
call fcn.1400371e0
mov r12, rax
mov dil, 1
jmp 0x14003e7a0
mov r12d, dword [r8 + 0xc]
shl r12, 0x20
mov eax, dword [r8 + 8]
or r12, rax
mov byte [rsp + 0x54], 1
cmp edi, 0xca
jmp 0x14003cff1
mov rcx, rsi
call fcn.1400370c0
mov ebx, eax
mov rcx, r15
call fcn.1400370c0
or ebx, eax
mov edx, ebx
shr rdx, 4
lea rax, [0x140000000]
mov edx, dword [rax + rdx*4 + 0x463570]
lea rcx, [rbp + 0xd8]
call fcn.1400376b0
mov r8, qword [rbp + 0xe0]
mov r12d, dword [r8 + 0xc]
shl r12, 0x20
mov eax, dword [r8 + 8]
or r12, rax
mov byte [rsp + 0x54], 1
cmp edi, 0xc9
jne 0x14003c545
mov eax, dword [r15 + 4]
mov dword [rsp + 0x50], eax
mov eax, dword [rsi + 4]
jmp 0x14003e798
mov rcx, r8
call fcn.140037070
test al, al
jne 0x14003c60b
mov rbx, qword [rbp + 0xe0]
mov rcx, rbx
call fcn.140037090
test al, al
je 0x140037c3f
mov rcx, rbx
call fcn.14003f1a0
mov rcx, rax
call fcn.1400370d0
cmp eax, 7
jne 0x140037c3f
mov rcx, rbx
call fcn.14003f1a0
mov rcx, rax
call fcn.140037190
test al, al
jne 0x140037c3f
and edi, 0x3f
jmp case.0x140037b7b.103
mov rcx, rsi
call fcn.140037380
movzx ebx, al
mov rcx, r15
call fcn.140037380
movzx edx, al
or edx, ebx
lea rcx, [rbp + 0xd8]
call fcn.14003f290
jmp case.0x140037b7b.103
mov rcx, r15
call fcn.1400370c0
test eax, eax
je 0x14003c675
mov rcx, r15
call fcn.1400370c0
mov edx, eax
shr rdx, 4
lea rax, [0x140000000]
mov edx, dword [rax + rdx*4 + 0x463570]
lea rcx, [rbp + 0xd8]
call fcn.1400376b0
jmp case.0x140037b7b.103
mov rcx, rsi
call fcn.1400370c0
cmp eax, 0x20
jne case.0x140037b7b.103
mov edx, 0x40000000
lea rcx, [rbp + 0xd8]
call fcn.1400376b0
jmp case.0x140037b7b.103
cmp edi, 9
jne case.0x140037b7b.106
mov rcx, r15
call fcn.14003f1a0
mov rcx, rax
call fcn.140037110
test al, al
je 0x14003c711
mov rax, qword [rsp + 0x60]
lea rcx, [0x140000000]
movzx eax, byte [rcx + rax*8 + 0x4646d7]
mov edi, dword [rcx + rax*4 + 0x4644b0]
mov rcx, rsi
call fcn.1400370c0
mov ebx, eax
mov rcx, r15
call fcn.1400370c0
or eax, ebx
shr rax, 4
lea rcx, [0x140000000]
or edi, dword [rcx + rax*4 + 0x463570]
mov edx, edi
lea rcx, [rbp + 0xd8]
call fcn.140037680
mov rcx, rsi
call fcn.1400370d0
jmp 0x14003e78c
lea r10, [0x140000000]
movzx ecx, byte [rsi + 3]
movzx eax, byte [r15 + 3]
or rcx, rax
shr rcx, 4
mov eax, dword [r10 + rcx*4 + 0x463570]
or dword [rbp + 0xd8], eax
cmp edi, 9
jne 0x14003c74b
mov eax, dword [rsi + 4]
mov dword [rsp + 0x50], eax
mov eax, dword [r15 + 4]
jmp 0x14003e798
cmp edi, 0x11
jne case.default.0x140037b7b
mov eax, dword [rsi + 4]
mov r13, r15
jmp 0x14003d002
cmp edi, 0x11
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.1400370c0
mov eax, eax
shr rax, 4
lea rbx, [0x140000000]
mov eax, dword [rbx + rax*4 + 0x463570]
mov dword [rbp - 0x34], eax
mov rcx, r15
call fcn.14003f1a0
mov rcx, rax
call fcn.140037170
movzx eax, al
mov eax, dword [rbx + rax*4 + 0x4635f0]
mov dword [rbp - 0x30], eax
lea rdx, [rbp - 0x34]
lea rcx, [rbp - 0x30]
call fcn.14003f160
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.1400376b0
mov rcx, rsi
call fcn.1400370d0
mov r13, r15
jmp 0x14003d002
mov rdi, qword [rbp + 0xe8]
lea rbx, [rdi + 0x10]
lea r13, [rdi + 0x20]
mov rcx, rsi
call fcn.140037120
test al, al
je case.default.0x140037b7b
mov rcx, r15
call fcn.140037120
test al, al
je case.default.0x140037b7b
mov rdi, qword [rbp + 0xe0]
mov rcx, rdi
call fcn.140037120
test al, al
je 0x14003ea1a
mov rcx, qword [rbp + 0xe8]
call fcn.140037120
test al, al
je 0x14003ea1a
mov rcx, rbx
call fcn.140037120
test al, al
je 0x14003ea1a
mov rcx, r13
call fcn.140037090
test al, al
je 0x14003ea1a
mov rcx, r15
call fcn.1400370d0
mov ebx, eax
mov rcx, rdi
call fcn.1400370d0
mov edi, eax
mov rcx, qword [rbp + 0xe8]
call fcn.1400370d0
mov dword [rbp + 0xd0], eax
mov rcx, qword [rbp + 0xe8]
add rcx, 0x10
call fcn.1400370d0
test bl, 3
jne 0x14003c8af
lea ecx, [rbx + 1]
cmp edi, ecx
jne 0x14003c8af
lea ecx, [rbx + 2]
cmp dword [rbp + 0xd0], ecx
jne 0x14003c8af
lea ecx, [rbx + 3]
cmp eax, ecx
jne 0x14003c8af
mov rcx, rsi
call fcn.1400370d0
shl ebx, 7
add eax, ebx
jmp 0x14003d002
mov ecx, 0x3c
jmp 0x140038527
mov edx, 0x8000039
mov rcx, r15
call fcn.1400370e0
movzx ebx, al
mov rcx, rsi
call fcn.140037380
movzx ecx, al
or ecx, ebx
shl ecx, 0x1b
or dword [rbp + 0xd8], ecx
mov r8, qword [rbp + 0xe0]
jmp case.0x140037b7b.111
movzx ecx, byte [rsi + 3]
movzx eax, byte [r15 + 3]
or rcx, rax
shr rcx, 4
or ebx, dword [r10 + rcx*4 + 0x463570]
mov dword [rbp + 0xd8], ebx
mov r12d, dword [r8 + 0xc]
shl r12, 0x20
mov eax, dword [r8 + 8]
or r12, rax
mov byte [rsp + 0x54], 1
cmp edi, 0xc9
jne 0x14003c932
mov eax, dword [rsi + 4]
mov dword [rsp + 0x50], eax
mov eax, dword [r15 + 4]
jmp 0x14003e798
cmp edi, 0xd1
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.1400370d0
mov r13, r15
jmp 0x14003d002
mov rax, qword [rbp + 0xe8]
cmp dword [rax], 0
je case.0x140037b7b.115
mov edx, 2
mov rcx, rax
call fcn.140037130
test al, al
je case.default.0x140037b7b
mov r8, qword [rbp + 0xe0]
mov edx, 0x8000000
mov eax, dword [rsi]
and eax, 0xff000fff
xor ecx, ecx
cmp eax, 0x8000039
cmove ecx, edx
xor eax, eax
cmp byte [r8 + 3], 8
cmove eax, edx
or ecx, eax
or dword [rbp + 0xd8], ecx
jmp case.0x140037b7b.114
mov eax, dword [rsi]
and eax, 0xff000fff
xor ecx, ecx
cmp eax, 0x289
cmove ecx, r9d
or ebx, ecx
movzx ecx, byte [rsi + 3]
movzx eax, byte [r15 + 3]
or rcx, rax
shr rcx, 4
or ebx, dword [r10 + rcx*4 + 0x463570]
mov dword [rbp + 0xd8], ebx
cmp edi, 0x49
je 0x14003d7f5
cmp edi, 0x89
jne case.default.0x140037b7b
mov eax, dword [r15 + 4]
shl eax, 7
add eax, dword [rsi + 4]
mov r13, r8
jmp 0x14003d002
cmp edi, 0x49
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.1400370d0
test al, 1
jne 0x14003caa3
mov rcx, rsi
call fcn.1400370d0
lea ebx, [rax + 1]
mov rcx, r15
call fcn.1400370d0
cmp ebx, eax
jne 0x14003caa3
mov rcx, qword [rbp + 0xe0]
call fcn.1400370c0
mov edx, eax
shr rdx, 4
lea rax, [0x140000000]
mov edx, dword [rax + rdx*4 + 0x463570]
lea rcx, [rbp + 0xd8]
call fcn.1400376b0
mov rcx, qword [rbp + 0xe0]
call fcn.1400370d0
mov ebx, eax
mov rcx, rsi
call fcn.1400370d0
shl ebx, 7
add eax, ebx
mov dword [rsp + 0x50], eax
mov rdi, qword [rbp + 0xe8]
mov rcx, rdi
call fcn.140037080
mov rcx, rdi
test al, al
jne 0x14003e793
call fcn.140037090
test al, al
je case.default.0x140037b7b
mov r13, rdi
jmp 0x14003d006
mov ecx, 0x1d
jmp 0x140038527
movzx edx, byte [rsi + 3]
movzx eax, byte [r15 + 3]
or rdx, rax
shr rdx, 4
mov edx, dword [r10 + rdx*4 + 0x463570]
lea rcx, [rbp + 0xd8]
call fcn.1400376b0
mov rax, qword [rbp + 0xe8]
mov ecx, dword [rax]
and ecx, 7
shl ecx, 9
add ecx, edi
mov r12d, dword [rax + 4]
shl r12d, 4
mov dil, 1
mov dword [rsp + 0x54], edi
cmp ecx, 0x249
jne 0x14003cb29
mov rcx, r15
call fcn.1400370d0
mov ebx, eax
mov rcx, rsi
call fcn.1400370d0
shl ebx, 7
add eax, ebx
mov dword [rsp + 0x50], eax
mov rcx, qword [rbp + 0xe0]
call fcn.1400370d0
mov dword [rsp + 0x5c], eax
jmp 0x14003e7a0
cmp ecx, 0x289
jne case.default.0x140037b7b
mov rcx, r15
call fcn.1400370d0
mov ebx, eax
mov rcx, rsi
call fcn.1400370d0
shl ebx, 7
add eax, ebx
mov r13, qword [rbp + 0xe0]
jmp 0x14003d002
mov rcx, rsi
call fcn.1400373d0
movzx edx, al
lea rcx, [rbp + 0xd8]
call fcn.14003f2a0
jmp case.0x140037b7b.122
mov rcx, rsi
call fcn.1400373d0
movzx edx, al
lea rcx, [rbp + 0xd8]
call fcn.14003f2a0
lea r10, [0x140000000]
movzx ecx, byte [rsi + 3]
movzx eax, byte [r15 + 3]
or rcx, rax
shr rcx, 4
mov eax, dword [r10 + rcx*4 + 0x463570]
or dword [rbp + 0xd8], eax
mov rdx, qword [rbp + 0xe8]
mov ecx, dword [rdx]
and ecx, 7
shl ecx, 9
add ecx, edi
mov r12d, dword [rdx + 0xc]
shl r12, 0x20
mov eax, dword [rdx + 8]
or r12, rax
mov dil, 1
mov dword [rsp + 0x54], edi
cmp ecx, 0x649
jne 0x14003cbfc
mov eax, dword [r15 + 4]
shl eax, 7
add eax, dword [rsi + 4]
mov dword [rsp + 0x50], eax
mov rax, qword [rbp + 0xe0]
mov eax, dword [rax + 4]
mov dword [rsp + 0x5c], eax
jmp 0x14003e7a0
cmp ecx, 0x689
jmp 0x14003cb2f
mov rcx, rsi
call fcn.140037380
movzx ebx, al
mov rcx, qword [rbp + 0xe0]
call fcn.140037380
movzx edx, al
or edx, ebx
lea rcx, [rbp + 0xd8]
call fcn.14003f290
cmp edi, 0x49
jne 0x14003cc40
mov rcx, qword [rbp + 0xe0]
jmp 0x14003e778
cmp edi, 0x51
jne case.default.0x140037b7b
mov rcx, qword [rbp + 0xe0]
call fcn.1400370d0
mov ebx, eax
mov rcx, rsi
call fcn.1400370d0
shl ebx, 7
add eax, ebx
mov r13, r15
jmp 0x14003d002
cmp edi, 0x11
jne case.0x140037b7b.128
mov rax, qword [rsp + 0x60]
movzx edx, byte [r10 + rax*8 + 0x4646d7]
mov edx, dword [r10 + rdx*4 + 0x4644b0]
lea rcx, [rbp + 0xd8]
call fcn.140037680
mov rcx, rsi
call fcn.1400370c0
mov eax, eax
shr rax, 4
lea rbx, [0x140000000]
mov eax, dword [rbx + rax*4 + 0x463570]
mov dword [rbp - 0x2c], eax
mov rcx, r15
call fcn.14003f1a0
mov rcx, rax
call fcn.140037170
movzx eax, al
mov eax, dword [rbx + rax*4 + 0x4635f0]
mov dword [rbp - 0x28], eax
lea rdx, [rbp - 0x2c]
lea rcx, [rbp - 0x28]
jmp 0x14003c7ac
cmp edi, 0x51
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.1400370c0
mov ebx, eax
mov rcx, qword [rbp + 0xe0]
call fcn.1400370c0
or eax, ebx
shr rax, 4
lea rbx, [0x140000000]
mov eax, dword [rbx + rax*4 + 0x463570]
mov dword [rbp - 0x24], eax
mov rcx, r15
call fcn.14003f1a0
mov rcx, rax
call fcn.140037170
movzx eax, al
mov eax, dword [rbx + rax*4 + 0x4635f0]
mov dword [rbp - 0x20], eax
lea rdx, [rbp - 0x24]
lea rcx, [rbp - 0x20]
call fcn.14003f160
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.1400376b0
mov rcx, qword [rbp + 0xe0]
call fcn.1400370d0
mov ebx, eax
mov rcx, rsi
call fcn.1400370d0
shl ebx, 7
add eax, ebx
mov r13, r15
jmp 0x14003d002
mov rcx, qword [rbp + 0xe8]
call fcn.140037060
mov ebx, eax
shl ebx, 9
add ebx, edi
mov rcx, qword [rbp + 0xe8]
call fcn.14003f1a0
mov rcx, rax
call fcn.1400371e0
mov r12, rax
mov dil, 1
mov dword [rsp + 0x54], edi
cmp ebx, 0x649
jne 0x14003cdd6
mov rcx, qword [rbp + 0xe0]
call fcn.1400370d0
mov ebx, eax
mov rcx, rsi
call fcn.1400370d0
shl ebx, 7
add eax, ebx
mov dword [rsp + 0x50], eax
mov rcx, r15
call fcn.1400370d0
mov dword [rsp + 0x5c], eax
jmp 0x14003e7a0
cmp ebx, 0x651
jne case.default.0x140037b7b
jmp 0x14003cd4a
cmp edi, 9
jne 0x14003cebc
mov rcx, rsi
call fcn.140037110
test al, al
je 0x14003ce49
mov rax, qword [rsp + 0x60]
lea rcx, [0x140000000]
movzx edx, byte [rcx + rax*8 + 0x4646d7]
mov edx, dword [rcx + rdx*4 + 0x4644b0]
lea rcx, [rbp + 0xd8]
call fcn.140037680
mov rcx, rsi
call fcn.1400370c0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f1f0
mov rcx, r15
call fcn.1400370d0
mov rcx, rsi
jmp 0x14003e78f
mov rcx, r15
call fcn.140037110
test al, al
je 0x14003ce78
mov rcx, r15
call fcn.1400370c0
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.14003f1f0
mov rcx, rsi
call fcn.1400370d0
jmp 0x14003e78c
mov edx, 0x10000000
lea rcx, [rbp + 0xd8]
call fcn.1400376c0
test eax, eax
je 0x14003cef5
mov edx, 0xff9fe000
lea rcx, [rbp + 0xd8]
call fcn.1400376a0
mov edx, 0x40017e
lea rcx, [rbp + 0xd8]
call fcn.1400376b0
mov rcx, rsi
call fcn.1400370d0
jmp 0x14003e78c
cmp edi, 0x11
jne 0x14003cefc
mov edx, 0x10000000
lea rcx, [rbp + 0xd8]
call fcn.1400376c0
test eax, eax
je 0x14003c7bf
mov edx, 0xff9fe000
lea rcx, [rbp + 0xd8]
call fcn.1400376a0
mov edx, 0x40017e
jmp 0x14003c7b3
lea r10, [0x140000000]
mov rax, qword [rsp + 0x60]
movzx edx, byte [r10 + rax*8 + 0x4646d7]
mov edx, dword [r10 + rdx*4 + 0x4644b0]
lea rcx, [rbp + 0xd8]
call fcn.140037680
cmp edi, 0xa
jne case.default.0x140037b7b
mov edx, 0x10000000
lea rcx, [rbp + 0xd8]
call fcn.1400376c0
test eax, eax
je 0x14003cff7
mov edx, 0xff9fe000
lea rcx, [rbp + 0xd8]
call fcn.1400376a0
mov edx, 0x2001d6
lea rcx, [rbp + 0xd8]
call fcn.1400376b0
jmp 0x14003cff7
mov rcx, rsi
call fcn.1400370c0
mov ebx, eax
mov rcx, r15
call fcn.1400370c0
or ebx, eax
mov edx, ebx
shr rdx, 4
lea rax, [0x140000000]
mov edx, dword [rax + rdx*4 + 0x463570]
lea rcx, [rbp + 0xd8]
call fcn.1400376b0
cmp edi, 9
jne 0x14003cfad
mov rcx, rsi
call fcn.1400370d0
jmp 0x14003e78c
cmp edi, 0x11
je 0x14003c7bf
mov edx, 0x60000000
lea rcx, [rbp + 0xd8]
call fcn.1400376a0
mov rax, qword [rsp + 0x60]
lea rcx, [0x140000000]
movzx edx, byte [rcx + rax*8 + 0x4646d7]
mov edx, dword [rcx + rdx*4 + 0x4644b0]
lea rcx, [rbp + 0xd8]
call fcn.1400376b0
cmp edi, 0xa
jne case.default.0x140037b7b
mov rcx, r15
call fcn.1400370d0
mov r13, rsi
mov dword [rsp + 0x50], eax
mov ecx, dword [r13]
mov eax, ecx
shr rax, 3
and eax, 0x3ff
lea rdx, [0x140000000]
movzx r10d, byte [rax + rdx + 0x463170]
mov dword [rbp + 0xd0], r10d
shr rcx, 0x12
and ecx, 7
movzx eax, byte [rcx + rdx + 0x463108]
mov byte [r14], al
xor ecx, ecx
test al, al
setne cl
lea rbx, [rcx + r14]
mov rcx, qword [rbp + 0xc0]
mov eax, dword [rcx + 0x28]
mov byte [rbx], 0x67
test r10d, eax
mov r14d, 0
setne r14b
add r14, rbx
mov eax, dword [r13]
and eax, 0xf8
cmp eax, 8
jbe 0x14003d95e
mov r8d, dword [r13 + 4]
jmp 0x14003d961
cmp edi, 0x49
jne 0x14003d0f1
mov rcx, r8
call fcn.1400370d0
mov ebx, eax
mov rcx, rsi
call fcn.1400370d0
shl ebx, 7
add eax, ebx
mov dword [rsp + 0x50], eax
mov rcx, r15
call fcn.1400370d0
mov dword [rsp + 0x5c], eax
mov edx, 0x100
mov ecx, r13d
call fcn.14003f190
test al, al
je case.0x140037b7b.93
lea rcx, [rbp + 0xd8]
call fcn.140037640
mov rcx, r15
call fcn.1400370d0
mov ebx, eax
mov rcx, rsi
call fcn.1400370d0
shl ebx, 7
add eax, ebx
mov rcx, qword [rbp + 0xe0]
jmp 0x14003e78f
cmp edi, 0x51
jne 0x14003d0fe
mov rcx, r8
jmp 0x14003cd51
cmp edi, 0x89
jne case.default.0x140037b7b
lea rcx, [rbp + 0xd8]
call fcn.140037640
jmp 0x14003cb35
mov rcx, rsi
call fcn.1400370c0
mov ebx, eax
mov rcx, r15
call fcn.1400370c0
or ebx, eax
mov edx, ebx
shr rdx, 4
lea rax, [0x140000000]
mov edx, dword [rax + rdx*4 + 0x463570]
lea rcx, [rbp + 0xd8]
call fcn.1400376b0
cmp edi, 0x49
je 0x14003d0ce
cmp edi, 0x89
je 0x14003cb35
mov edx, 0x60000000
lea rcx, [rbp + 0xd8]
call fcn.1400376a0
mov rax, qword [rsp + 0x60]
lea rcx, [0x140000000]
movzx edx, byte [rcx + rax*8 + 0x4646d7]
mov edx, dword [rcx + rdx*4 + 0x4644b0]
lea rcx, [rbp + 0xd8]
call fcn.1400376b0
mov rcx, qword [rbp + 0xe0]
call fcn.14003f1a0
mov rcx, rax
call fcn.1400371e0
mov r12, rax
mov byte [rsp + 0x54], 1
cmp edi, 0xc9
jne 0x14003d1cd
mov rcx, rsi
call fcn.1400370d0
jmp 0x14003e78c
cmp edi, 0xd1
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.1400370d0
mov r13, r15
jmp 0x14003d002
cmp edi, 0x49
je 0x14003d086
cmp edi, 0x51
jne 0x14003d1ff
mov rcx, r8
jmp 0x14003cd51
lea rcx, [rbp + 0xd8]
cmp edi, 0x89
jne 0x14003d218
call fcn.140037640
jmp 0x14003cb35
mov rax, qword [rsp + 0x60]
movzx edx, byte [r10 + rax*8 + 0x4646d7]
mov edx, dword [r10 + rdx*4 + 0x4644b0]
call fcn.140037680
mov rcx, qword [rbp + 0xe0]
call fcn.14003f1a0
mov rcx, rax
call fcn.1400371e0
mov r12, rax
mov byte [rsp + 0x54], 1
cmp edi, 0xc9
jne 0x14003d1cd
mov rcx, rsi
call fcn.1400370d0
jmp 0x14003e78c
cmp edi, 0x49
je 0x14003d0ce
cmp edi, 0x89
je 0x14003cb35
mov rax, qword [rsp + 0x60]
movzx edx, byte [r10 + rax*8 + 0x4646d7]
mov edx, dword [r10 + rdx*4 + 0x4644b0]
lea rcx, [rbp + 0xd8]
call fcn.140037680
cmp edi, 9
je 0x14003c46c
jmp case.0x140037b7b.159
mov rcx, rsi
call fcn.1400370c0
mov ebx, eax
mov rcx, r15
call fcn.1400370c0
or ebx, eax
mov edx, ebx
shr rdx, 4
lea rbx, [0x140000000]
mov edx, dword [rbx + rdx*4 + 0x463570]
lea rcx, [rbp + 0xd8]
call fcn.1400376b0
jmp 0x14003d2ea
lea rbx, [0x140000000]
cmp edi, 0x49
je 0x14003d0ce
cmp edi, 0x89
je 0x14003cb35
mov edx, 0x60000000
lea rcx, [rbp + 0xd8]
call fcn.1400376a0
mov rax, qword [rsp + 0x60]
movzx edx, byte [rbx + rax*8 + 0x4646d7]
mov edx, dword [rbx + rdx*4 + 0x4644b0]
lea rcx, [rbp + 0xd8]
call fcn.1400376b0
cmp edi, 0x4a
jne case.default.0x140037b7b
mov rcx, r15
call fcn.1400370d0
mov ebx, eax
mov rcx, qword [rbp + 0xe0]
call fcn.1400370d0
shl ebx, 7
add eax, ebx
jmp 0x14003cfff
mov rcx, r15
call fcn.140037090
movzx edx, al
lea rcx, [rbp + 0xd8]
call fcn.14003f2a0
lea r10, [0x140000000]
movzx ecx, byte [rsi + 3]
movzx eax, byte [r15 + 3]
or rcx, rax
shr rcx, 4
mov eax, dword [r10 + rcx*4 + 0x463570]
or dword [rbp + 0xd8], eax
cmp edi, 0x49
jne 0x14003d3b7
mov eax, dword [r15 + 4]
shl eax, 7
add eax, dword [rsi + 4]
mov dword [rsp + 0x50], eax
mov rax, qword [rbp + 0xe0]
mov eax, dword [rax + 4]
jmp 0x14003e798
cmp edi, 0x89
je 0x14003cb35
mov edx, 0x60001000
lea rcx, [rbp + 0xd8]
call fcn.1400376a0
mov rax, qword [rsp + 0x60]
lea rcx, [0x140000000]
movzx edx, byte [rcx + rax*8 + 0x4646d7]
mov edx, dword [rcx + rdx*4 + 0x4644b0]
lea rcx, [rbp + 0xd8]
call fcn.1400376b0
lea rcx, [rbp + 0xd8]
call fcn.1400374a0
mov dword [rsp + 0x50], eax
mov rcx, qword [rbp + 0xe0]
call fcn.14003f1a0
mov rcx, rax
call fcn.1400371e0
mov r12, rax
mov byte [rsp + 0x54], 1
cmp edi, 0xc9
jne 0x14003d446
mov rcx, rsi
call fcn.1400370d0
shl eax, 7
add dword [rsp + 0x50], eax
mov rcx, r15
jmp 0x14003e793
cmp edi, 0xd1
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.1400370d0
shl eax, 7
add dword [rsp + 0x50], eax
mov r13, r15
jmp 0x14003d006
mov rcx, rsi
call fcn.140037380
movzx ebx, al
mov rcx, r15
call fcn.140037380
movzx edx, al
or edx, ebx
lea rcx, [rbp + 0xd8]
call fcn.14003f290
cmp edi, 9
je 0x14003d42f
cmp edi, 0x11
jmp 0x14003d44c
cmp edi, 0xd1
jne case.0x140037b7b.146
lea rcx, [rbp + 0xd8]
call fcn.140037650
lea r10, [0x140000000]
movzx ecx, byte [rsi + 3]
movzx eax, byte [r15 + 3]
or rcx, rax
shr rcx, 4
mov eax, dword [r10 + rcx*4 + 0x463570]
or dword [rbp + 0xd8], eax
mov r8, qword [rbp + 0xe0]
mov r12d, dword [r8 + 0xc]
shl r12, 0x20
mov eax, dword [r8 + 8]
or r12, rax
mov byte [rsp + 0x54], 1
jmp 0x14003d534
mov rcx, rsi
call fcn.140037380
test al, al
jne 0x14003d50a
mov rcx, r15
call fcn.1400370c0
cmp eax, 8
je 0x14003d50a
xor edx, edx
jmp 0x14003d50c
mov dl, 1
lea rcx, [rbp + 0xd8]
call fcn.14003f260
mov rcx, qword [rbp + 0xe0]
call fcn.14003f1a0
mov rcx, rax
call fcn.1400371e0
mov r12, rax
mov byte [rsp + 0x54], 4
cmp edi, 0xc9
jne 0x14003d446
mov eax, dword [rsi + 4]
shl eax, 7
add dword [rsp + 0x50], eax
mov eax, dword [r15 + 4]
jmp 0x14003e798
mov rcx, rsi
call fcn.1400370c0
mov ebx, eax
mov rcx, r15
call fcn.1400370c0
or ebx, eax
mov edx, ebx
shr rdx, 4
lea rax, [0x140000000]
mov edx, dword [rax + rdx*4 + 0x463570]
lea rcx, [rbp + 0xd8]
call fcn.1400376b0
mov r12, qword [rbp + 0xe8]
mov eax, dword [r12]
and eax, 7
shl eax, 9
add eax, edi
cmp eax, 0x249
jne 0x14003d5e2
mov rcx, r15
call fcn.1400370d0
mov ebx, eax
mov rcx, rsi
call fcn.1400370d0
shl ebx, 7
add eax, ebx
mov dword [rsp + 0x50], eax
mov rcx, qword [rbp + 0xe0]
call fcn.1400370d0
mov dword [rsp + 0x5c], eax
mov rcx, r12
call fcn.1400370d0
shl eax, 4
mov r12d, eax
mov dil, 1
jmp 0x14003e7a0
cmp eax, 0x449
jne 0x14003d62f
lea rcx, [rbp + 0xd8]
call fcn.140037640
mov rcx, r15
call fcn.1400370d0
mov ebx, eax
mov rcx, rsi
call fcn.1400370d0
mov r13, r12
mov rcx, qword [rbp + 0xe0]
shl ebx, 7
add eax, ebx
mov dword [rsp + 0x50], eax
call fcn.1400370d0
shl eax, 4
mov r12d, eax
mov byte [rsp + 0x54], 1
jmp 0x14003d006
cmp eax, 0x289
jne case.default.0x140037b7b
mov rcx, r15
call fcn.1400370d0
mov ebx, eax
mov rcx, rsi
call fcn.1400370d0
shl ebx, 7
add eax, ebx
mov dword [rsp + 0x50], eax
mov r13, qword [rbp + 0xe0]
mov rcx, r12
call fcn.1400370d0
shl eax, 4
mov r12d, eax
mov byte [rsp + 0x54], 1
jmp 0x14003d006
mov rbx, qword [rbp + 0xe8]
lea r12, [rbx + 0x10]
mov rcx, r12
call fcn.1400370a0
test al, al
je case.default.0x140037b7b
mov rcx, rbx
call fcn.140037060
shl eax, 9
add eax, edi
mov dword [rbp + 0xd0], eax
mov rcx, rbx
call fcn.1400370c0
mov ebx, eax
mov rcx, rsi
call fcn.1400370c0
mov edi, eax
or edi, ebx
mov rcx, r15
call fcn.1400370c0
mov ebx, eax
or ebx, edi
mov rcx, qword [rbp + 0xe0]
call fcn.1400370c0
or eax, ebx
mov edx, eax
shr rdx, 4
lea rax, [0x140000000]
mov edx, dword [rax + rdx*4 + 0x463570]
lea rcx, [rbp + 0xd8]
call fcn.1400376b0
mov rcx, r12
call fcn.14003f1a0
mov rcx, rax
call fcn.14003f140
movzx r12d, al
and r12d, 0xf
mov dil, 1
mov dword [rsp + 0x54], edi
mov eax, dword [rbp + 0xd0]
cmp eax, 0x249
jne 0x14003d760
mov rcx, r15
call fcn.1400370d0
mov ebx, eax
mov rcx, rsi
call fcn.1400370d0
shl ebx, 7
add eax, ebx
mov dword [rsp + 0x50], eax
mov rcx, qword [rbp + 0xe0]
call fcn.1400370d0
mov dword [rsp + 0x5c], eax
mov rcx, qword [rbp + 0xe8]
call fcn.1400370d0
shl eax, 4
or r12, rax
jmp 0x14003e7a0
cmp eax, 0x449
jne 0x14003d7ac
lea rcx, [rbp + 0xd8]
call fcn.140037640
mov rcx, r15
call fcn.1400370d0
mov ebx, eax
mov rcx, rsi
call fcn.1400370d0
shl ebx, 7
add eax, ebx
mov dword [rsp + 0x50], eax
mov r13, qword [rbp + 0xe8]
mov rcx, qword [rbp + 0xe0]
call fcn.1400370d0
shl eax, 4
or r12, rax
jmp 0x14003d006
cmp eax, 0x289
jne case.default.0x140037b7b
mov rcx, r15
call fcn.1400370d0
mov ebx, eax
mov rcx, rsi
call fcn.1400370d0
shl ebx, 7
add eax, ebx
mov dword [rsp + 0x50], eax
mov r13, qword [rbp + 0xe0]
mov rcx, qword [rbp + 0xe8]
call fcn.1400370d0
shl eax, 4
or r12, rax
jmp 0x14003d006
cmp edi, 0x49
jne 0x14003d80c
mov eax, dword [r15 + 4]
shl eax, 7
add eax, dword [rsi + 4]
mov dword [rsp + 0x50], eax
mov eax, dword [r8 + 4]
jmp 0x14003e798
cmp edi, 0x11
je 0x14003c7bf
cmp edi, 0xa
jne case.default.0x140037b7b
mov rax, qword [rsp + 0x60]
movzx edx, byte [r10 + rax*8 + 0x4646d7]
mov edx, dword [r10 + rdx*4 + 0x4644b0]
lea rcx, [rbp + 0xd8]
call fcn.140037680
jmp 0x14003cff7
mov rcx, rsi
call fcn.1400370c0
mov ebx, eax
mov rcx, r15
call fcn.1400370c0
or ebx, eax
mov edx, ebx
shr rdx, 4
lea rax, [0x140000000]
mov edx, dword [rax + rdx*4 + 0x463570]
lea rcx, [rbp + 0xd8]
call fcn.1400376b0
mov r12, qword [rbp + 0xe8]
mov eax, dword [r12]
and eax, 7
shl eax, 9
add eax, edi
cmp eax, 0x249
jne 0x14003d8f5
mov rcx, r15
call fcn.1400370d0
mov ebx, eax
mov rcx, rsi
call fcn.1400370d0
shl ebx, 7
add eax, ebx
mov dword [rsp + 0x50], eax
mov edx, 0x100
mov ecx, r13d
call fcn.14003f190
test al, al
jne 0x14003d5bc
lea rcx, [rbp + 0xd8]
call fcn.140037640
mov rcx, r12
call fcn.1400370d0
mov dword [rsp + 0x5c], eax
mov rcx, qword [rbp + 0xe0]
call fcn.1400370d0
shl eax, 4
mov r12d, eax
mov dil, 1
jmp 0x14003e7a0
cmp eax, 0x449
je 0x14003d5e9
cmp eax, 0x289
jne case.default.0x140037b7b
mov rcx, r15
call fcn.1400370d0
mov ebx, eax
mov rcx, rsi
call fcn.1400370d0
mov r13, qword [rbp + 0xe0]
mov rcx, r12
jmp 0x14003d611
cmp edi, eax
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.1400370d0
mov dword [rsp + 0x50], eax
jmp case.0x140037b7b.93
cmp edi, 0x11
jne case.default.0x140037b7b
mov rcx, rsi
call fcn.1400370d0
mov r13, r15
jmp 0x14003d002
xor r8d, r8d
mov dword [rsp + 0x5c], r8d
mov edx, dword [r13]
mov eax, edx
and eax, 0x1f00
cmp eax, 0x100
jbe 0x14003d97e
mov r11d, dword [r13 + 8]
jmp 0x14003d981
xor r11d, r11d
mov dword [rbp - 0x80], r11d
and edx, 0xe00000
neg edx
sbb r9d, r9d
and r9d, 0x10
or r9d, dword [rcx + 0x5c]
add r9d, r9d
mov eax, r11d
and eax, 0x10
or r9d, eax
shl r9d, 0xb
mov edx, dword [rsp + 0x50]
mov eax, edx
and eax, 0xf98
or r9d, eax
add r9d, r9d
mov eax, r11d
and eax, 8
or r9d, eax
add r9d, r9d
and r8d, 8
or r9d, r8d
shl r9d, 2
mov r8d, dword [rsp + 0x58]
mov ecx, r8d
and ecx, 0x1000
mov eax, dword [rbp + 0xd8]
or ecx, eax
shr ecx, 8
and ecx, 0x60001f
or r9d, ecx
and edx, 7
mov dword [rsp + 0x50], edx
mov rdx, qword [rsp + 0x70]
mov edx, dword [rdx]
mov ecx, edx
not ecx
and ecx, 0xffc00000
shl ecx, 9
or r9d, ecx
test r8d, 0x8c0000
je 0x14003da32
test r8d, 0xc0000
jne 0x14003e84f
mov ecx, r8d
and ecx, 0x800000
or r9d, ecx
shr edx, 0x18
test dl, 1
je 0x14003da50
test r9d, 0x80df8110
jne 0x14003da5d
test r8d, 0xc00
jne 0x14003da50
or r9d, 0x10
test r9d, 0x80df8110
je 0x14003dbb2
mov edi, r9d
and edi, 0x8000
shl edi, 4
or edi, r9d
and edi, 0xffff78ef
shl edi, 4
and r9d, 0x100
or edi, r9d
shl edi, 4
mov edx, eax
shr edx, 1
and edx, 0x8300000
mov ecx, eax
and ecx, 0x8000000
or edx, ecx
shr edx, 4
or edi, edx
xor edi, 0x87cf062
bt edi, 0x1c
jae 0x14003db6a
mov rax, qword [rsp + 0x70]
mov edx, dword [rax + 4]
shr edx, 3
and edx, 0xe
mov dword [rbp - 0x68], edx
mov ecx, dword [r13]
shr ecx, 0x15
and ecx, 7
test edx, edx
je 0x14003db60
mov eax, edi
and eax, 0x60000000
mov dword [rbp - 0x1c], eax
mov eax, edx
shl eax, cl
bsf eax, eax
cmp eax, 4
jae 0x14003daed
mov dword [rbp - 0x4c], 0
jmp 0x14003daff
add eax, 0xfffffffc
shl eax, 0x1d
mov dword [rbp - 0x4c], eax
mov ecx, 0x40000000
cmp eax, ecx
ja 0x14003db60
lea rdx, [rbp - 0x4c]
lea rcx, [rbp - 0x1c]
call fcn.14003f160
and edi, 0x9fffffff
or edi, eax
mov edx, 0xffff1fff
lea rcx, [rbp + 0xd8]
call fcn.1400376a0
mov ecx, dword [rbp - 0x68]
call fcn.14003f2c0
shl eax, 0xd
mov edx, eax
lea rcx, [rbp + 0xd8]
call fcn.1400376b0
mov r10d, dword [rbp + 0xd0]
mov r11d, dword [rbp - 0x80]
mov dword [r14], edi
movzx eax, byte [rbp + 0xd8]
mov byte [r14 + 4], al
add r14, 5
jmp 0x14003dc42
mov eax, 0x29
jmp 0x14003852c
mov edx, edi
shr edx, 0x1d
and edx, 3
mov ecx, eax
shr ecx, 0xd
and ecx, 0x18
add edx, ecx
mov ecx, eax
shr ecx, 0x19
and ecx, 4
add edx, ecx
lea r8, [0x140000000]
add eax, dword [r8 + rdx*4 + 0x463040]
mov dword [rbp + 0xd8], eax
mov dword [r14], edi
movzx eax, byte [rbp + 0xd8]
mov byte [r14 + 4], al
add r14, 5
jmp 0x14003dc42
mov edx, eax
shr edx, 1
and edx, 0x300000
mov ecx, eax
and ecx, 0x8000000
or edx, ecx
shr edx, 1
mov ecx, r9d
and ecx, 0x200000
or edx, ecx
shr edx, 0xb
mov ecx, r8d
and ecx, 0xfffffc00
shl ecx, 0x15
or edx, ecx
or edx, r9d
and eax, 0xffff1fff
mov dword [rbp + 0xd8], eax
test edx, 0x8000807e
je 0x14003dc22
mov ecx, edx
and ecx, 0xf
shl eax, 0x18
lea r8, [0x140000000]
or eax, dword [r8 + rcx*4 + 0x463110]
movzx ecx, dx
shl ecx, 8
xor eax, ecx
mov dword [r14], eax
add r14, 4
jmp 0x14003dc42
mov byte [r14], 0xc5
mov eax, edx
shr eax, 8
xor al, dl
xor al, 0xf9
mov byte [r14 + 1], al
movzx eax, byte [rbp + 0xd8]
mov byte [r14 + 2], al
add r14, 3
mov rdx, qword [rsp + 0x70]
mov eax, dword [rdx]
shr eax, 0x14
test al, 1
jne 0x14003e36c
test r10b, 0x42
jne 0x14003e254
test r10b, 1
je 0x14003dd9f
mov ecx, dword [rsp + 0x5c]
and ecx, 7
mov dword [rsp + 0x5c], ecx
mov edi, dword [r13 + 0xc]
mov eax, dword [rsp + 0x50]
lea ebx, [rcx + rax*8]
cmp ecx, 4
je 0x14003dd09
mov eax, dword [rdx]
shr eax, 0x15
test al, 1
jne 0x14003dd09
cmp ecx, 5
je 0x14003dca8
test edi, edi
jne 0x14003dca8
mov byte [r14], bl
inc r14
mov edi, dword [rsp + 0x54]
jmp 0x14003e756
mov edx, 0xe000
lea rcx, [rbp + 0xd8]
call fcn.1400376c0
shr eax, 0xd
mov dword [rbp + 0xd0], eax
mov r13d, edi
mov ecx, eax
sar r13d, cl
mov ecx, r13d
call fcn.14003f2b0
test al, al
je 0x14003dcfc
mov ecx, dword [rbp + 0xd0]
mov eax, r13d
shl eax, cl
cmp edi, eax
jne 0x14003dcfc
add bl, 0x40
mov byte [r14], bl
mov byte [r14 + 1], r13b
add r14, 2
mov edi, dword [rsp + 0x54]
jmp 0x14003e756
add bl, 0x80
mov byte [r14], bl
mov edx, edi
jmp 0x14003e13e
and ebx, 0xf8
or ebx, 4
cmp ecx, 5
je 0x14003dd36
test edi, edi
jne 0x14003dd36
mov byte [r14], bl
movzx eax, byte [rsp + 0x5c]
add al, 0x20
mov byte [r14 + 1], al
add r14, 2
mov edi, dword [rsp + 0x54]
jmp 0x14003e756
mov ecx, dword [rbp + 0xd8]
shr ecx, 0xd
and ecx, 7
mov edx, edi
sar edx, cl
lea eax, [rdx + 0x80]
cmp eax, 0xff
ja 0x14003dd7d
mov eax, edx
shl eax, cl
cmp edi, eax
jne 0x14003dd7d
add bl, 0x40
mov byte [r14], bl
movzx eax, byte [rsp + 0x5c]
add al, 0x20
mov byte [r14 + 1], al
mov byte [r14 + 2], dl
add r14, 3
mov edi, dword [rsp + 0x54]
jmp 0x14003e756
add bl, 0x80
mov byte [r14], bl
movzx eax, byte [rsp + 0x5c]
add al, 0x20
mov byte [r14 + 1], al
mov dword [r14 + 2], edi
add r14, 6
mov edi, dword [rsp + 0x54]
jmp 0x14003e756
test r10b, 0x30
jne 0x14003e154
mov edi, dword [r13]
mov dword [rsp + 0x70], edi
mov eax, dword [r13 + 0xc]
mov dword [rbp - 0x68], eax
and edi, 0xc000
mov rax, qword [rbp + 0xc0]
test byte [rax + 0x48], 1
je 0x14003dde9
cmp edi, 0x8000
je 0x14003a28a
movzx eax, byte [rsp + 0x50]
shl al, 3
add al, 5
mov byte [r14], al
jmp 0x14003e13b
mov rcx, r13
call fcn.14003f1a0
mov rcx, rax
call fcn.1400370d0
mov dword [rbp + 0xd0], eax
mov eax, dword [rbp - 0x68]
sar eax, 0x1f
mov dword [rbp - 0x80], eax
mov rcx, r13
call fcn.14003f1a0
mov rcx, rax
call fcn.1400370d0
mov dword [rbp - 0x78], eax
mov rcx, qword [rbp + 0xc0]
call fcn.1400372d0
mov rcx, rax
call fcn.140037280
mov rcx, rax
mov qword [rbp - 0x70], rax
test edi, edi
jne 0x14003dfc9
cmp rax, 0xffffffffffffffff
jne 0x14003df74
mov eax, dword [rbp + 0xd0]
cmp eax, dword [rbp - 0x80]
je 0x14003e127
mov eax, dword [rbp - 0x78]
test eax, eax
je 0x14003e0b6
mov edi, 4
mov r8d, edi
lea rdx, [rsp + 0x68]
mov rax, qword [rbp + 0xc0]
mov rcx, qword [rax + 0x30]
call sym.ConsoleApplication1.exe_public:_unsigned_int___cdecl_asmjit::_abi_1_10::CodeHolder::newRelocEntry_struct_asmjit::_abi_1_10::RelocEntry____ptr64____ptr64__enum_asmjit::_abi_1_10::RelocType____ptr64
test eax, eax
jne 0x14003852c
movzx eax, byte [rsp + 0x50]
shl al, 3
add al, 5
mov byte [r14], al
lea rbx, [r14 + 1]
mov r14, qword [rbp + 0xc0]
mov rcx, qword [r14 + 0x90]
call fcn.140037210
mov rcx, qword [rsp + 0x68]
mov dword [rcx + 0x10], eax
mov rcx, r14
call fcn.140037340
mov rcx, qword [rsp + 0x68]
mov qword [rcx + 0x18], rax
mov rcx, qword [rsp + 0x68]
add rcx, 8
mov r8d, edi
xor edx, edx
call fcn.140037220
mov edi, dword [rsp + 0x54]
movzx r8d, dil
mov rdx, rbx
sub rdx, qword [r14 + 0xa8]
mov rcx, qword [rsp + 0x68]
add rcx, 8
call fcn.140037250
mov rcx, r13
call fcn.14003f1a0
mov rcx, rax
call fcn.1400371b0
mov rcx, qword [rsp + 0x68]
mov qword [rcx + 0x20], rax
xor edx, edx
mov rcx, rbx
call fcn.14003f2d0
lea r14, [rbx + 4]
cmp dil, 4
movzx eax, dil
jb 0x14003df3e
mov edx, r12d
mov rcx, r14
call fcn.14003f2d0
add r14, 4
shr r12, 0x20
lea eax, [rdi - 4]
test al, al
je 0x14003ea10
mov byte [r14], r12b
inc r14
shr r12, 8
add al, 0xff
je 0x14003ea10
mov byte [r14], r12b
inc r14
shr r12, 8
add al, 0xff
je 0x14003ea10
mov r13d, dword [rsp + 0x58]
jmp 0x14003a79c
mov rcx, r13
call fcn.14003f1a0
mov rcx, rax
call fcn.1400374a0
cmp dword [rsp + 0x60], 0x17e
jne 0x14003dfa3
mov ecx, dword [rbp + 0xd0]
cmp ecx, dword [rbp - 0x80]
je 0x14003df9f
cmp dword [rbp - 0x78], 0
jne 0x14003dfa3
mov cl, 1
jmp 0x14003dfa5
xor cl, cl
cmp eax, 5
jae 0x14003e096
test cl, cl
jne 0x14003e096
mov rdi, r14
mov rax, qword [rbp + 0xc0]
sub rdi, qword [rax + 0x98]
jmp 0x14003dff8
mov eax, dword [rsp + 0x70]
and eax, 0xc000
cmp eax, 0x8000
jne 0x14003e096
mov rdi, r14
mov rax, qword [rbp + 0xc0]
sub rdi, qword [rax + 0x98]
cmp rcx, 0xffffffffffffffff
je 0x14003de62
mov rcx, qword [rax + 0x90]
call fcn.140037210
test eax, eax
jne 0x14003de62
mov rax, qword [rbp + 0xc0]
mov rcx, qword [rax + 0x90]
call fcn.140036b80
movzx ecx, byte [rsp + 0x54]
add rax, rdi
add rcx, rax
mov rdi, qword [rbp - 0x70]
add rdi, 5
add rdi, rcx
mov rcx, r13
call fcn.14003f1a0
mov rcx, rax
call fcn.1400371b0
sub rax, rdi
mov qword [rbp - 0x70], rax
mov rcx, rax
call fcn.14003f120
test al, al
je 0x14003e07e
movzx eax, byte [rsp + 0x50]
shl al, 3
add al, 5
mov byte [r14], al
mov edx, dword [rbp - 0x70]
lea rcx, [r14 + 1]
call fcn.14003f2d0
add r14, 5
mov edi, dword [rsp + 0x54]
jmp 0x14003df1e
mov rcx, r13
call fcn.14003f1a0
mov rcx, rax
call fcn.140037480
test al, al
jne 0x14003a28a
mov eax, dword [rbp + 0xd0]
cmp eax, dword [rbp - 0x80]
je 0x14003e127
mov eax, dword [rbp - 0x78]
test eax, eax
je 0x14003e0b6
mov ecx, 0x2e
jmp 0x140038527
movzx eax, byte [rbx]
cmp al, 0x67
je 0x14003e127
cmp dword [rsp + 0x60], 0x17e
jne 0x14003e104
test al, 0x40
je 0x14003e127
and eax, 0xf7
mov byte [rbx], al
cmp eax, 0x40
jne 0x14003e127
mov edx, 0x40000000
mov ecx, dword [rsp + 0x58]
call fcn.14003f190
test al, al
jne 0x14003e127
inc rbx
cmp rbx, r14
je 0x14003e0ff
movzx eax, byte [rbx]
mov byte [rbx - 1], al
inc rbx
cmp rbx, r14
jne 0x14003e0f1
dec r14
jmp 0x14003e127
mov rdx, r14
cmp r14, rbx
je 0x14003e121
nop dword [rax]
lea rcx, [rdx - 1]
movzx eax, byte [rcx]
mov byte [rdx], al
mov rdx, rcx
cmp rcx, rbx
jne 0x14003e110
mov byte [rdx], 0x67
inc r14
movzx eax, byte [rsp + 0x50]
shl al, 3
add al, 4
mov byte [r14], al
inc r14
mov byte [r14], 0x25
mov edx, dword [rbp - 0x68]
lea rcx, [r14 + 1]
call fcn.14003f2d0
add r14, 5
mov edi, dword [rsp + 0x54]
jmp 0x14003e756
movzx eax, byte [rsp + 0x50]
shl al, 3
add al, 5
mov byte [r14], al
inc r14
mov rbx, qword [rbp + 0xc0]
test byte [rbx + 0x48], 1
jne 0x14003e4b8
mov rcx, r13
call fcn.14003f1a0
mov rcx, rax
call fcn.1400371d0
mov edx, eax
mov dword [rbp - 0x78], eax
test byte [rbp + 0xd0], 0x10
je 0x14003e243
lea rax, [rbx + 0x30]
mov qword [rsp + 0x70], rax
mov rbx, qword [rax]
mov rcx, r13
call fcn.14003f1a0
mov rcx, rax
call fcn.1400370d0
mov edx, eax
mov rcx, rbx
call fcn.140037290
mov r13, rax
test rax, rax
je 0x14003e69b
mov edi, dword [rsp + 0x54]
movzx eax, dil
mov ecx, 0xfffffffc
sub ecx, eax
mov ebx, dword [rbp - 0x78]
add ebx, ecx
mov dword [rbp - 0x78], ebx
mov rax, qword [rbp + 0xc0]
add rax, 0x90
mov qword [rbp - 0x80], rax
mov rdx, qword [rax]
mov rcx, r13
call fcn.140037260
test al, al
je 0x14003e22d
mov rax, qword [rbp + 0xc0]
mov rbx, qword [rax + 0x98]
mov rcx, r13
call fcn.140037270
sub ebx, r14d
mov edx, dword [rbp - 0x78]
add edx, ebx
add edx, eax
mov rcx, r14
call fcn.14003f2d0
jmp 0x14003e752
mov r8b, 4
mov rcx, qword [rbp + 0xc0]
add rcx, 0x98
jmp 0x14003e5ff
mov rcx, r14
call fcn.14003f2d0
mov edi, dword [rsp + 0x54]
jmp 0x14003e752
test r10b, 0x40
jne 0x14003e26d
cmp r11d, 4
jne 0x14003e376
lea eax, [r11 + 0x28]
jmp 0x14003852c
movsx edx, word [r13 + 0xc]
mov edi, edx
mov ecx, r10d
and ecx, 3
je 0x14003e342
mov eax, dword [rsp + 0x5c]
and eax, 7
mov dword [rsp + 0x5c], eax
and r11d, 7
mov dword [rbp - 0x80], r11d
cmp ecx, 3
jne 0x14003e2cb
mov rcx, r13
call fcn.14003f1a0
mov rcx, rax
call fcn.1400374b0
test eax, eax
jne 0x14003a28a
mov eax, dword [rsp + 0x5c]
mov ecx, dword [rbp - 0x80]
lea eax, [rcx + rax*8]
lea rcx, [0x140000000]
movzx ecx, byte [rax + rcx + 0x4635b0]
jmp 0x14003e2e7
test r10b, 2
je 0x14003e2d8
mov eax, r11d
mov dword [rsp + 0x5c], eax
lea rcx, [0x140000000]
movzx ecx, byte [rax + rcx + 0x462ff8]
movzx ecx, cl
cmp ecx, 0xff
je 0x14003a28a
mov eax, dword [rsp + 0x50]
lea ebx, [rcx + rax*8]
test edi, edi
jne 0x14003e315
cmp ebx, 6
je 0x14003e315
mov byte [r14], bl
inc r14
mov edi, dword [rsp + 0x54]
jmp 0x14003e756
mov ecx, edi
call fcn.14003f2b0
test al, al
je 0x14003e337
add bl, 0x40
mov byte [r14], bl
mov byte [r14 + 1], dil
add r14, 2
mov edi, dword [rsp + 0x54]
jmp 0x14003e756
add bl, 0x80
mov byte [r14], bl
movzx edx, di
jmp 0x14003e356
test r10b, 0x30
jne 0x14003a28a
movzx eax, byte [rsp + 0x50]
or al, 6
mov byte [r14], al
lea rcx, [r14 + 1]
call fcn.14003f2e0
add r14, 3
mov edi, dword [rsp + 0x54]
jmp 0x14003e756
test r10b, 2
je case.default.0x140037b7b
and r11d, 7
mov dword [rbp - 0x80], r11d
test r10b, 1
je 0x14003e430
mov ecx, dword [rsp + 0x5c]
and ecx, 7
mov dword [rsp + 0x5c], ecx
mov r9d, dword [r13 + 0xc]
mov eax, dword [rsp + 0x50]
lea edx, [rax*8 + 4]
movzx eax, word [r13 + 2]
and eax, 3
lea eax, [r11 + rax*8]
lea r10d, [rcx + rax*8]
test r9d, r9d
jne 0x14003e3d0
cmp ecx, 5
je 0x14003e3d0
mov byte [r14], dl
mov byte [r14 + 1], r10b
add r14, 2
mov edi, dword [rsp + 0x54]
jmp 0x14003e756
mov ecx, dword [rbp + 0xd8]
shr ecx, 0xd
and ecx, 7
mov r8d, r9d
sar r8d, cl
lea eax, [r8 + 0x80]
cmp eax, 0xff
ja 0x14003e415
mov eax, r8d
shl eax, cl
cmp r9d, eax
jne 0x14003e415
add dl, 0x40
mov byte [r14], dl
mov byte [r14 + 1], r10b
mov byte [r14 + 2], r8b
add r14, 3
mov edi, dword [rsp + 0x54]
jmp 0x14003e756
add dl, 0x80
mov byte [r14], dl
mov byte [r14 + 1], r10b
mov dword [r14 + 2], r9d
add r14, 6
mov edi, dword [rsp + 0x54]
jmp 0x14003e756
test r10b, 0x30
jne 0x14003e46e
movzx eax, byte [rsp + 0x50]
shl al, 3
add al, 4
mov byte [r14], al
movzx eax, byte [r13 + 2]
and al, 3
shl al, 3
add al, r11b
shl al, 3
add al, 5
mov byte [r14 + 1], al
mov eax, dword [r13 + 0xc]
mov dword [r14 + 2], eax
add r14, 6
mov edi, dword [rsp + 0x54]
jmp 0x14003e756
mov rax, qword [rbp + 0xc0]
test byte [rax + 0x48], 1
je 0x14003a28a
movzx eax, byte [rsp + 0x50]
shl al, 3
add al, 4
mov byte [r14], al
mov rcx, r13
call fcn.14003f1a0
mov rcx, rax
call fcn.1400374b0
shl al, 3
mov ecx, dword [rbp - 0x80]
add al, cl
shl al, 3
add al, 5
mov byte [r14 + 1], al
add r14, 2
mov rbx, qword [rbp + 0xc0]
add rbx, 0x30
mov qword [rsp + 0x70], rbx
mov rdx, qword [rbx]
lea rcx, [rdx + 0x100]
mov eax, dword [rcx + 0xc]
sub eax, dword [rcx + 8]
cmp eax, 1
jae 0x14003e4f1
add rdx, 0x60
mov r9d, 1
lea r8d, [r9 + 7]
call sym.ConsoleApplication1.exe_protected:_unsigned_int___cdecl_asmjit::_abi_1_10::ZoneVectorBase::_grow_class_asmjit::_abi_1_10::ZoneAllocator____ptr64__unsigned_int__unsigned_int____ptr64
test eax, eax
jne 0x14003e664
mov eax, dword [r13 + 0xc]
mov dword [rbp - 0x68], eax
mov rcx, qword [rbx]
test byte [rbp + 0xd0], 0x10
je 0x14003e6a5
mov eax, dword [r13 + 4]
cmp eax, dword [rcx + 0xf8]
jae 0x14003e69b
mov edx, eax
mov rax, qword [rcx + 0xf0]
mov r13, qword [rax + rdx*8]
test r13, r13
je 0x14003e69b
mov r8d, 3
lea rdx, [rsp + 0x68]
call sym.ConsoleApplication1.exe_public:_unsigned_int___cdecl_asmjit::_abi_1_10::CodeHolder::newRelocEntry_struct_asmjit::_abi_1_10::RelocEntry____ptr64____ptr64__enum_asmjit::_abi_1_10::RelocType____ptr64
test eax, eax
jne 0x14003852c
mov r8, qword [rbp + 0xc0]
lea rax, [r8 + 0x90]
mov qword [rbp - 0x80], rax
mov rax, qword [rax]
mov ecx, dword [rax]
mov rax, qword [rsp + 0x68]
mov dword [rax + 0x10], ecx
lea rax, [r8 + 0x98]
mov qword [rbp - 0x70], rax
mov rcx, qword [r8 + 0xa8]
sub rcx, qword [rax]
mov rax, qword [rsp + 0x68]
mov qword [rax + 0x18], rcx
mov rax, qword [rsp + 0x68]
mov dword [rax + 8], 0x4040001
mov dword [rax + 0xc], 0x2000
mov rdx, qword [rsp + 0x68]
movzx ecx, r14b
sub cl, byte [r8 + 0xa8]
movzx eax, cl
add al, byte [rdx + 0xb]
mov edi, dword [rsp + 0x54]
add al, dil
mov byte [rdx + 0xa], al
mov byte [rdx + 0xc], cl
movsxd rcx, dword [rbp - 0x68]
mov rax, qword [rsp + 0x68]
mov qword [rax + 0x20], rcx
cmp qword [r13 + 0x20], 0
je 0x14003e5ed
mov rcx, qword [rsp + 0x68]
mov rax, qword [r13 + 0x18]
add qword [rcx + 0x20], rax
mov rax, qword [r13 + 0x20]
mov ecx, dword [rax]
mov rax, qword [rsp + 0x68]
mov dword [rax + 0x14], ecx
jmp 0x14003e74b
movzx eax, dil
mov ebx, 0xfffffffc
sub ebx, eax
mov r8b, 4
mov rcx, qword [rbp - 0x70]
mov rdx, qword [rbp - 0x80]
mov r10, qword [rsp + 0x70]
mov byte [rbp + 0xc8], r8b
mov rcx, qword [rcx]
mov word [rbp - 0x58], 0
mov byte [rbp - 0x56], r8b
mov byte [rbp - 0x55], r8b
mov byte [rbp - 0x54], 0
movzx eax, r8b
shl al, 3
mov byte [rbp - 0x53], al
mov word [rbp - 0x52], 0
mov rax, qword [rdx]
mov r8d, dword [rax]
movsxd rax, ebx
mov r9, r14
sub r9, rcx
lea rcx, [rbp - 0x58]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rax
mov rdx, r13
mov rcx, qword [r10]
call sym.ConsoleApplication1.exe_public:_struct_asmjit::_abi_1_10::LabelLink____ptr64___cdecl_asmjit::_abi_1_10::CodeHolder::newLabelLink_class_asmjit::_abi_1_10::LabelEntry____ptr64__unsigned_int__unsigned_long_long_unsigned___int64___long_long___int64___struct_asmjit::_abi_1_10::OffsetFormat_const____ptr64____ptr64
mov rcx, rax
test rax, rax
jne 0x14003e66e
mov eax, 1
jmp 0x14003852c
mov rax, qword [rsp + 0x68]
test rax, rax
je 0x14003e67d
mov eax, dword [rax]
mov dword [rcx + 0xc], eax
movzx eax, byte [rbp + 0xc8]
mov ebx, eax
mov r8d, eax
xor edx, edx
mov rcx, r14
call fcn.140204776
add r14, rbx
jmp 0x14003e756
mov eax, ntohs
jmp 0x14003852c
mov r8d, 3
lea rdx, [rsp + 0x68]
call sym.ConsoleApplication1.exe_public:_unsigned_int___cdecl_asmjit::_abi_1_10::CodeHolder::newRelocEntry_struct_asmjit::_abi_1_10::RelocEntry____ptr64____ptr64__enum_asmjit::_abi_1_10::RelocType____ptr64
test eax, eax
jne 0x14003852c
mov r8, qword [rbp + 0xc0]
mov rax, qword [r8 + 0x90]
mov ecx, dword [rax]
mov rax, qword [rsp + 0x68]
mov dword [rax + 0x10], ecx
mov rax, qword [r8 + 0x90]
mov ecx, dword [rax]
mov rax, qword [rsp + 0x68]
mov dword [rax + 0x14], ecx
mov rax, qword [rsp + 0x68]
mov dword [rax + 8], 0x4040001
mov dword [rax + 0xc], 0x2000
mov rdx, qword [rsp + 0x68]
movzx ecx, r14b
sub cl, byte [r8 + 0xa8]
movzx eax, cl
add al, byte [rdx + 0xb]
mov edi, dword [rsp + 0x54]
add al, dil
mov byte [rdx + 0xa], al
mov byte [rdx + 0xc], cl
mov rdx, qword [r8 + 0xa8]
sub rdx, qword [r8 + 0x98]
mov rax, qword [rsp + 0x68]
mov qword [rax + 0x18], rdx
mov r8, qword [rsp + 0x68]
movzx ecx, byte [r8 + 0xa]
add rcx, rdx
movsxd rax, dword [rbp - 0x68]
add rcx, rax
mov qword [r8 + 0x20], rcx
mov dword [r14], 0
add r14, 4
movzx eax, dil
cmp dil, 4
jb 0x14003df3e
mov dword [r14], r12d
jmp 0x14003df33
cmp edi, 0x49
jne case.default.0x140037b7b
mov rcx, r8
call fcn.1400370d0
mov ebx, eax
mov rcx, rsi
call fcn.1400370d0
shl ebx, 7
add eax, ebx
mov rcx, r15
mov dword [rsp + 0x50], eax
call fcn.1400370d0
mov dword [rsp + 0x5c], eax
mov edi, dword [rsp + 0x54]
mov rbx, qword [rbp + 0xc0]
mov r8d, dword [rbx + 0x5c]
shl r8d, 0xc
mov eax, dword [rsp + 0x50]
and eax, 0xf98
or r8d, eax
shl r8d, 2
mov eax, dword [rsp + 0x5c]
and eax, 0x18
or r8d, eax
shl r8d, 2
mov eax, r13d
and eax, 0x1000
or eax, dword [rbp + 0xd8]
shr eax, 8
and eax, 0x60001f
or r8d, eax
and dword [rsp + 0x50], 7
test r13d, 0x8c0000
je 0x14003e865
mov eax, r13d
and eax, 0x800000
or r8d, eax
test r13d, 0xc0000
je 0x14003e865
mov eax, r8d
and eax, 0x600000
cmp eax, 0x400000
mov rax, qword [rsp + 0x70]
je 0x14003e822
test byte [rax + 4], 0x70
jne 0x14003e84f
mov ecx, dword [rax + 4]
mov eax, r13d
shr eax, 0x12
test al, 1
je 0x14003e847
shr ecx, 2
test cl, 1
je 0x14003e84f
mov eax, r8d
xor eax, r13d
and eax, 0x600000
xor r8d, eax
jmp 0x14003e860
shr ecx, 3
test cl, 1
jne 0x14003e859
mov eax, 0x2a
jmp 0x14003852c
and r8d, 0xff9fffff
bts r8d, 0x14
mov rax, qword [rsp + 0x70]
test byte [rax + 3], 1
je 0x14003e886
test r8d, 0xd78150
jne 0x14003e893
test r13d, 0xc00
jne 0x14003e886
or r8d, 0x10
test r8d, 0xd78150
je 0x14003e945
mov edx, r8d
and edx, 0x8000
shl edx, 4
or edx, r8d
and edx, 0xffff78ef
shl edx, 4
and r8d, 0x100
or edx, r8d
shl edx, 4
mov eax, dword [rbp + 0xd8]
mov ecx, eax
shr ecx, 1
and ecx, 0x8300000
and eax, 0x8000000
or ecx, eax
shr ecx, 4
or edx, ecx
xor edx, 0x87cf062
mov dword [r14], edx
movzx eax, byte [rbp + 0xd8]
mov byte [r14 + 4], al
mov ecx, dword [rsp + 0x5c]
and ecx, 7
mov dword [rsp + 0x5c], ecx
movzx edx, byte [rsp + 0x50]
shl dl, 3
sub dl, 0x40
add dl, cl
mov byte [r14 + 5], dl
add r14, 6
test dil, dil
je 0x140039392
mov byte [r14], r12b
lea rax, [r14 + 1]
mov r14, rax
cmp dil, 1
je 0x140039392
shr r12, 8
mov byte [rax], r12b
shr r12, 8
mov byte [rax + 1], r12b
shr r12, 8
mov byte [rax + 2], r12b
lea r14, [rax + 3]
jmp 0x140039392
mov eax, dword [rbp + 0xd8]
mov edx, eax
shr edx, 1
and edx, 0x300000
mov ecx, eax
and ecx, 0x8000000
or edx, ecx
shr edx, 1
mov ecx, r8d
and ecx, 0x200000
or edx, ecx
shr edx, 0xb
mov ecx, r13d
and ecx, 0xfffffc00
shl ecx, 0x15
or edx, ecx
or edx, r8d
test edx, 0x8000803e
je 0x14003e9cf
mov ecx, edx
and ecx, 0xf
shl eax, 0x18
lea r8, [0x140000000]
or eax, dword [r8 + rcx*4 + 0x463110]
movzx ecx, dx
shl ecx, 8
xor eax, ecx
mov dword [r14], eax
mov eax, dword [rsp + 0x5c]
and eax, 7
mov dword [rsp + 0x5c], eax
movzx ecx, byte [rsp + 0x50]
shl cl, 3
sub cl, 0x40
add cl, al
mov byte [r14 + 4], cl
add r14, 5
jmp 0x14003e908
mov byte [r14], 0xc5
mov eax, edx
shr eax, 8
xor al, dl
xor al, 0xf9
mov byte [r14 + 1], al
movzx eax, byte [rbp + 0xd8]
mov byte [r14 + 2], al
mov ecx, dword [rsp + 0x5c]
and ecx, 7
mov dword [rsp + 0x5c], ecx
movzx edx, byte [rsp + 0x50]
shl dl, 3
sub dl, 0x40
add dl, cl
mov byte [r14 + 3], dl
add r14, 4
jmp 0x14003e908
mov r13d, dword [rsp + 0x58]
jmp 0x14003938b
mov rbx, rdi
mov eax, 0x1a
jmp 0x140038533
mov rbx, r8
mov eax, 0x1a
jmp 0x140038533