Function at 0x140093380
Capabilities:
Check http status code
Encode data using base64
Parse credit card information
Query environment variable

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov dword [rsp + 0x10], edx
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
mov eax, 0x1bb8
call fcn.1400e0a90
sub rsp, rax
lea rbp, [rsp + 0x40]
mov qword [rbp + 0x98], 0xfffffffffffffffe
movaps xmmword [rbp + 0x1b60], xmm6
movaps xmmword [rbp + 0x1b50], xmm7
movaps xmmword [rbp + 0x1b40], xmm8
movaps xmmword [rbp + 0x1b30], xmm9
movaps xmmword [rbp + 0x1b20], xmm10
movaps xmmword [rbp + 0x1b10], xmm11
movaps xmmword [rbp + 0x1b00], xmm12
movaps xmmword [rbp + 0x1af0], xmm13
movaps xmmword [rbp + 0x1ae0], xmm14
mov r15, rcx
mov r13, qword [rbp + 0x1be0]
mov r13, qword [r13]
mov qword [rbp + 0x48], r13
xor r14d, r14d
mov dword [rbp], r14d
lea rbx, [0x1400f1524]
mov qword [rbp + 0x18], rbx
mov eax, r14d
cmp byte [rcx], 2
cmove rax, qword [0x14012a950]
mov qword [rbp + 0x60], rax
mov r8d, r14d
mov dword [rbp + 4], r14d
mov r12d, r14d
mov dword [rbp + 0x14], r14d
movsxd rcx, edx
shl rcx, 5
mov rax, qword [r15 + 8]
mov qword [rbp + 0x50], r14
mov rsi, qword [rcx + rax + 0x18]
movabs r9, 0xffffffffffffff0
lea r11, [0x140077ce0]
lea r10, [0x140000000]
movsd xmm11, qword [0x140112018]
movsd xmm10, qword [0x140112360]
movsd xmm14, qword [0x140112350]
movsd xmm12, qword [0x140112050]
movsd xmm9, qword [0x140112048]
xorpd xmm8, xmm8
movsd xmm13, qword [0x140112010]
mov qword [rbp + 8], rsi
cmp dword [rsi + 0x10], 0x44
je 0x140095787
mov eax, dword [rsp]
sub rsp, 0x20
lea r15, [rsp + 0x40]
mov qword [rbp + 0x20], r15
mov eax, dword [r15]
mov rax, qword [rsi]
mov qword [r15], rax
mov rax, qword [rsi + 8]
mov qword [r15 + 8], rax
mov rax, qword [rsi + 0x10]
mov qword [r15 + 0x10], rax
mov rax, qword [rsi + 0x18]
mov qword [r15 + 0x18], rax
mov ecx, dword [r15 + 0x10]
cmp ecx, 8
jge 0x140093a98
cmp ecx, 7
jne 0x140095352
mov rbx, qword [r15 + 8]
test rbx, rbx
je 0x14009381a
mov r12, qword [r15]
mov rdi, r14
lea rcx, [0x1400f1524]
mov qword [r15], rcx
mov dword [r15 + 0x10], r14d
mov rcx, qword [r12]
cmp rcx, rbx
jne 0x140093585
movzx eax, word [r12 + 0x12]
cmp word [rbx + rax*2], 0
jne 0x140093585
cmp byte [r12 + 0x28], 0
je 0x140093585
mov rax, qword [r12 + 8]
cmp byte [rax + 0x23], 0
jne 0x140093550
mov rax, qword [rax + 0x10]
test byte [rax + 0x21], 2
je 0x140093585
mov dword [r15 + 0x10], 6
mov rcx, qword [r12 + 8]
cmp byte [rcx + 0x23], 0
jne 0x14009356d
mov rcx, qword [rcx + 0x10]
mov rcx, qword [rcx]
mov qword [r15], rcx
mov rax, qword [rcx]
call qword [rax + reloc.WSOCK32.dll_htonl]
lea rbx, [0x1400f1524]
jmp 0x140095352
test rcx, rcx
je 0x1400936c1
nop
cmp rbx, rcx
jae 0x1400935b6
cmp rdi, 0xfd
jae 0x1400935bf
movzx eax, word [rbx]
mov word [rbp + rdi*2 + 0xa0], ax
inc rdi
add rbx, 2
cmp rbx, qword [r12]
jb 0x140093595
cmp rdi, 0xfd
jb 0x1400935c9
cmp rbx, qword [r12]
jb 0x1400936bb
mov rsi, qword [r12 + 8]
movzx ecx, byte [rsi + 0x23]
test ecx, ecx
je 0x140093660
dec ecx
je 0x140093609
dec ecx
je 0x1400935f1
dec ecx
je 0x14009364d
mov rdx, qword [rsi + 0x28]
xor ecx, ecx
call qword [rsi + reloc.OLEAUT32.dll_SafeArrayGetElement]
jmp 0x14009366b
xor ecx, ecx
call fcn.140006b40
mov r11, rax
mov eax, 0xffffffff
cmp r11, rax
cmove r11, r14
jmp 0x14009366e
mov rcx, rsi
call fcn.140001130
cmp dword [0x14012ac4c], 0
jne 0x140093652
cmp qword [rsi + 0x10], 0
jne 0x140093652
xor r8d, r8d
lea rdx, [rbp + 0x80]
mov rcx, qword [rsi + 0x28]
call qword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
test eax, eax
je 0x140093646
mov qword [0x14012e1a8], r14
lea r11d, [rax - 1]
jmp 0x14009366e
mov qword [0x14012e1a8], rsi
mov r11, r14
jmp 0x14009366e
mov r11, qword [rsi + 0x10]
shr r11, 1
jmp 0x14009366e
xor edx, edx
mov rcx, qword [rsi + 0x10]
call fcn.1400bda90
mov r11, rax
mov eax, 0xfd
sub rax, rdi
cmp r11, rax
ja 0x1400936bb
lea rdx, [rbp + rdi*2 + 0xa0]
mov rcx, qword [r12 + 8]
call fcn.1400bda90
add rdi, rax
movzx eax, word [r12 + 0x12]
lea rbx, [rbx + rax*2]
add r12, 0x18
mov rcx, qword [r12]
test rcx, rcx
jne 0x140093590
mov rsi, qword [rbp + 8]
movabs r9, 0xffffffffffffff0
jmp 0x1400936c1
mov rsi, qword [rbp + 8]
jmp 0x14009370b
movzx eax, word [rbx]
test ax, ax
je 0x1400936f0
nop dword [rax]
cmp rdi, 0xfd
jae 0x1400936f9
mov word [rbp + rdi*2 + 0xa0], ax
inc rdi
add rbx, 2
movzx eax, word [rbx]
test ax, ax
jne 0x1400936d0
cmp rdi, 0xfd
jb 0x1400936ff
cmp word [rbx], 0
jne 0x14009370b
test rdi, rdi
jne 0x14009372e
cmp byte [r12 + 0x10], dil
jne 0x14009372e
cmp qword [r12], 0
je 0x14009371d
add r12, 0x18
cmp qword [r12], 0
jne 0x140093712
cmp byte [r12 + 0x10], 0
jne 0x140095b21
jmp 0x1400938a1
mov word [rbp + rdi*2 + 0xa0], r14w
cmp byte [r12 + 0x10], 0
je 0x14009379f
mov dword [r15 + 0x10], r14d
lea rcx, [rbp + 0xa0]
lea rax, [rdi + rdi + 2]
lea rdx, [rax + 0xf]
cmp rdx, rax
ja 0x14009375b
mov rdx, r9
and rdx, 0xfffffffffffffff0
mov rax, rdx
call fcn.1400e0a90
sub rsp, rdx
lea rdi, [rsp + 0x40]
lea rax, [rbp + 0xa0]
mov rdx, rdi
sub rdx, rax
nop dword [rax]
movzx eax, word [rcx]
mov word [rdx + rcx], ax
add rcx, 2
test ax, ax
jne 0x140093780
mov qword [r15], rdi
lea rbx, [0x1400f1524]
jmp 0x140095352
cmp word [rbp + 0xa0], 0
je 0x140095981
lea rax, [rbp + 0x10]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 3
lea r9, [rbp + 0x7c]
mov r8, rdi
lea rdx, [rbp + 0xa0]
lea rcx, [0x14012c5c0]
call fcn.14003be10
test rax, rax
jne 0x140093810
mov eax, r14d
cmp byte [rbp + 0x10], 0
setne al
inc eax
mov dword [rsp + 0x20], eax
mov r9d, dword [rbp + 0x7c]
mov r8, rdi
lea rdx, [rbp + 0xa0]
lea rcx, [0x14012c5c0]
call fcn.14003c110
test rax, rax
je 0x140095981
mov qword [r15], rax
lea r11, [0x140077ce0]
mov rdi, qword [r15]
movzx eax, byte [rdi + 0x23]
test al, al
jne 0x14009382d
mov rax, qword [rdi + 0x10]
movzx eax, byte [rax + 0x23]
movzx ecx, al
dec ecx
je 0x1400938c6
cmp ecx, 3
jne 0x1400938ff
cmp dword [rsi + 0x30], 0x41
jne 0x140093882
lea rdx, [rsi + 0x20]
mov rax, qword [rdx]
mov rcx, qword [rax + 8]
test rcx, rcx
je 0x140093882
lea rax, [0x14007f2c0]
cmp qword [rcx + 0x10], rax
jne 0x140093882
mov rsi, rdx
mov qword [r15], 1
mov dword [r15 + 0x10], 1
lea rbx, [0x1400f1524]
jmp 0x140095352
mov rax, qword [rdi + 0x18]
cmp rax, r11
jne 0x1400938ad
mov rax, qword [0x1401255c8]
mov rcx, qword [rax + 8]
mov qword [r15], rcx
mov dword [r15 + 0x10], 1
lea rbx, [0x1400f1524]
jmp 0x140095352
lea rcx, [0x1400786a0]
cmp rax, rcx
jne 0x1400938ff
mov rax, qword [0x1401255c8]
mov rcx, qword [rax + 0x48]
jmp 0x140093896
cmp dword [0x14012ac4c], 0
jne 0x140094563
cmp byte [rdi + 0x23], 0
jne 0x1400938df
mov rcx, qword [rdi + 0x10]
jmp 0x1400938e2
mov rcx, rdi
test byte [rcx + 0x21], 0xa
jne 0x140094563
mov eax, r14d
cmp qword [rcx + 0x10], 0
setne al
test eax, eax
jne 0x140094563
movzx ecx, byte [rdi + 0x23]
test ecx, ecx
je 0x140093980
dec ecx
je 0x140093933
dec ecx
je 0x14009391e
dec ecx
je 0x140093972
mov rdx, qword [rdi + 0x28]
xor ecx, ecx
call qword [rdi + reloc.OLEAUT32.dll_SafeArrayGetElement]
jmp 0x14009398b
xor ecx, ecx
call fcn.140006b40
mov ecx, 0xffffffff
cmp rax, rcx
cmove rax, r14
jmp 0x14009398b
mov rcx, rdi
call fcn.140001130
cmp dword [0x14012ac4c], 0
jne 0x140093977
cmp qword [rdi + 0x10], 0
jne 0x140093977
xor r8d, r8d
lea rdx, [rbp + 0x78]
mov rcx, qword [rdi + 0x28]
call qword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
test eax, eax
je 0x14009396b
mov qword [0x14012e1a8], r14
dec eax
jmp 0x14009398b
mov qword [0x14012e1a8], rdi
mov rax, r14
jmp 0x14009398b
mov rax, qword [rdi + 0x10]
shr rax, 1
jmp 0x14009398b
xor edx, edx
mov rcx, qword [rdi + 0x10]
call fcn.1400bda90
lea rdx, [rax + 1]
cmp rdx, 1
jne 0x1400939c4
mov rcx, qword [r15]
movzx eax, byte [rcx + 0x23]
test al, al
jne 0x1400939a8
mov rax, qword [rcx + 0x10]
movzx eax, byte [rax + 0x23]
lea rbx, [0x1400f1524]
cmp al, 1
jne 0x1400945ff
mov dword [r15 + 0x10], 4
jmp 0x140095352
mov rcx, r13
mov rax, qword [rbp + 0x1be8]
sub rcx, qword [rax]
sar rcx, 1
mov rax, qword [rbp + 0x1bf0]
mov eax, dword [rax]
sub eax, ecx
cdqe
cmp rdx, rax
ja 0x1400939f7
mov rdi, r13
lea r13, [r13 + rdx*2]
mov qword [rbp + 0x48], r13
jmp 0x140093a79
cmp rdx, 0x1001
jae 0x140093a41
mov r8, qword [rbp + 0x50]
cmp r8, 0x9c40
jae 0x140093a41
lea rax, [rdx + rdx]
lea rcx, [rax + 0xf]
cmp rcx, rax
ja 0x140093a24
movabs rcx, 0xffffffffffffff0
and rcx, 0xfffffffffffffff0
mov rax, rcx
call fcn.1400e0a90
sub rsp, rcx
lea rdi, [rsp + 0x40]
add r8, rdx
mov qword [rbp + 0x50], r8
jmp 0x140093a79
movsxd r12, dword [rbp]
cmp r12d, 0xc8
je 0x140095686
lea rcx, [rdx + rdx]
call fcn.1400d6f08
mov rdi, rax
mov rax, r12
mov qword [rbp + r12*8 + 0x2a0], rdi
test rdi, rdi
je 0x140095686
inc r12d
mov dword [rbp], r12d
mov rdx, rdi
mov rcx, qword [r15]
call fcn.1400bda90
mov qword [r15], rdi
mov qword [r15 + 8], r14
mov dword [r15 + 0x10], 5
jmp 0x1400938a1
cmp ecx, 0x41
jne 0x1400942b4
mov rax, qword [r15]
mov r13, qword [rax + 8]
movzx edi, byte [rax + 0x11]
cmp edi, r8d
jg 0x140095b21
sub r8d, edi
mov dword [rbp + 4], r8d
movsxd rax, r8d
lea rsi, [rbp + rax*8 + 0x8e0]
mov rbx, rsi
test r13, r13
jne 0x140093b5f
test r8d, r8d
je 0x140095b21
dec r8d
mov dword [rbp + 4], r8d
movsxd rax, r8d
lea rsi, [rbp + rax*8 + 0x8e0]
mov rcx, qword [rsi]
call fcn.140085e10
mov r13, rax
test rax, rax
jne 0x140093b4c
test edi, edi
je 0x140093b1c
mov r8d, edi
shl r8, 3
lea rcx, [rbx + 8]
mov rdx, rbx
call fcn.1400d7a30
inc r12d
mov dword [rbp + 0x14], r12d
mov eax, dword [rsp]
sub rsp, 0x20
lea rcx, [rsp + 0x40]
mov eax, dword [rcx]
mov qword [rbx], rcx
mov dword [rcx + 0x10], r14d
mov rax, qword [rbx]
lea rcx, [0x1400f1524]
mov qword [rax], rcx
sub rbx, 8
add edi, 2
lea r13, [0x140127460]
cmp edi, dword [r13 + 0x24]
jge 0x140093b5f
mov rax, qword [r15]
cmp byte [rax + 0x10], 2
jne 0x140095b21
lea rax, [rbp + 0xa0]
mov qword [r15 + 8], rax
mov r12, qword [r15 + 0x18]
mov qword [r15 + 0x18], r14
mov qword [rbp + 0x30], r14
mov qword [rbp + 0x38], r14
mov dword [rbp + 0x40], r14d
mov rax, qword [r15]
cmp byte [rax + 0x10], 2
sete al
mov byte [rsp + 0x30], al
mov dword [rsp + 0x28], edi
mov qword [rsp + 0x20], rbx
mov r9, r15
mov rdi, qword [rbp + 0x1bd0]
mov r8, rdi
lea rdx, [rbp + 0x30]
mov rcx, r13
call fcn.1400962b0
test al, al
je 0x140095735
mov eax, dword [0x14012c560]
cmp eax, 3
je 0x140093c00
cmp eax, 5
je 0x140093bcb
cmp eax, 4
jne 0x140093c1a
mov rcx, qword [0x14012c4e8]
sub rcx, qword [0x14012c4e0]
add rcx, 0x18
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cmp edx, dword [0x14012c56c]
jge 0x140093c1a
mov rdi, qword [rbp + 0x1bc0]
cmp qword [0x14012c508], rdi
je 0x140093c21
mov rcx, rdi
call fcn.140008320
jmp 0x140093c21
mov rdi, qword [rbp + 0x1bc0]
mov qword [0x14012cc60], rdi
mov eax, dword [r15 + 0x10]
cmp eax, 1
je 0x140094291
cmp eax, 2
je 0x140094291
cmp eax, 6
je 0x140094291
mov ecx, dword [rbp + 4]
mov rax, qword [rbp + 8]
test ecx, ecx
jne 0x140093c6b
cmp dword [rax + 0x30], 0x44
jne 0x140093c6b
lea r15d, [rcx + 1]
cmp byte [rdi], 3
je 0x1400956a8
mov rbx, qword [rbp + 0x60]
jmp 0x140093c9c
mov r15d, r14d
cmp dword [rax + 0x30], 0x13
jne 0x140093c99
test ecx, ecx
je 0x140093c99
mov rax, qword [rsi - 8]
cmp dword [rax + 0x10], 4
jne 0x140093c99
mov rbx, qword [rax]
movzx eax, byte [rbx + 0x23]
test al, al
jne 0x140093c95
mov rax, qword [rbx + 0x10]
movzx eax, byte [rax + 0x23]
cmp al, 1
je 0x140093c9c
mov rbx, r14
mov rdi, qword [rbp + 0x20]
mov r14, qword [rdi]
test rbx, rbx
je 0x14009405d
mov rax, qword [0x1401255c8]
cmp qword [rax + 0xd8], r13
jne 0x140093cca
movzx eax, byte [rbx + 0x22]
and al, 0x22
cmp al, 2
je 0x14009405d
mov rdx, qword [rdi + 0x18]
cmp rdx, r14
jne 0x140093ce7
mov r8, qword [rdi + 8]
mov rcx, rbx
call fcn.1400bdea0
xor r14d, r14d
jmp 0x140094013
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, r14
repne scasw ax, word [rdi]
not rcx
dec rcx
cmp r14, qword [0x14012c420]
jne 0x140093d2c
cmp rcx, 0x40
jb 0x140093d2c
mov r8, rcx
mov rdx, r14
mov rcx, rbx
call fcn.1400bdea0
xor r14d, r14d
mov qword [0x14012c420], r14
mov qword [0x14012c428], r14
jmp 0x140094013
movzx edx, byte [rbx + 0x23]
test dl, dl
jne 0x140093d54
mov byte [rsp + 0x20], 1
xor r9d, r9d
or r8, 0xffffffffffffffff
mov rdx, r14
mov rcx, qword [rbx + 0x10]
call fcn.1400bd640
xor r14d, r14d
jmp 0x140093fe0
mov r8b, 1
lea r13, [0x1400f1524]
test r14, r14
jne 0x140093d6d
xor r8b, r8b
xor ecx, ecx
mov r14, r13
jmp 0x140093d8c
cmp qword [rbx + 8], r14
jne 0x140093d7c
mov rsi, qword [rbx + 0x10]
shr rsi, 1
jmp 0x140093d8f
or rcx, 0xffffffffffffffff
mov rdi, r14
repne scasw ax, word [rdi]
not rcx
dec rcx
mov rsi, rcx
lea rax, [rsi + 1]
lea rdi, [rax + rax]
cmp dl, 2
jne 0x140093daf
mov rdx, rsi
mov rcx, r14
call fcn.140006da0
xor r14d, r14d
jmp 0x140093fe0
cmp rdi, qword [0x1401255a0]
jbe 0x140093ddc
cmp rdi, qword [rbx + 0x18]
jbe 0x140093ddc
mov r8, r13
lea rdx, [0x140110420]
lea rcx, [0x14012c5c0]
call fcn.14004e590
xor r14d, r14d
jmp 0x140093fe0
cmp rax, 2
jae 0x140093e01
xor r14d, r14d
mov edx, r14d
test r8b, r8b
setne dl
add edx, 3
xor r8d, r8d
mov rcx, rbx
call fcn.1400bdcf0
jmp 0x140094013
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x140093e17
and al, 0x3d
mov byte [rbx + 0x21], al
mov rcx, qword [rbx]
mov rax, qword [rcx]
call qword [rax + reloc.WSOCK32.dll_recv]
and byte [rbx + 0x21], 0x82
mov r8, qword [rbx + 0x18]
cmp rdi, r8
jbe 0x140093fea
movzx ecx, byte [rbx + 0x20]
movzx eax, cl
cmp cl, 1
jbe 0x140093e48
cmp al, 2
je 0x140093e97
mov r12, qword [rbp + 0x68]
mov rax, qword [rbp + 0x88]
jmp 0x140093f97
cmp rdi, 0x80
ja 0x140093e97
cmp rdi, 8
ja 0x140093e5f
mov r12d, 8
jmp 0x140093e72
mov r12d, 0x80
cmp rdi, 0x10
mov eax, reloc.WSOCK32.dll_recv
cmovbe r12d, eax
mov qword [rbp + 0x68], r12
mov rcx, r12
call fcn.1400b60a0
mov qword [rbp + 0x88], rax
test rax, rax
je 0x1400956da
mov byte [rbx + 0x20], 1
jmp 0x140093f97
cmp rdi, 0x20
jae 0x140093ea8
mov r12d, SafeArrayAllocDescriptor
jmp 0x140093f4d
cmp rdi, 0x208
jae 0x140093ebc
mov r12d, 0x208
jmp 0x140093f4d
cmp rdi, 0x50000
jae 0x140093f09
pxor xmm0, xmm0
cvtsi2sd xmm0, rdi
test rdi, rdi
jns 0x140093ed8
addsd xmm0, xmm11
mulsd xmm0, xmm12
xor eax, eax
comisd xmm0, xmm9
jbe 0x140093eff
subsd xmm0, xmm9
comisd xmm0, xmm9
jae 0x140093eff
movabs rdx, 0x8000000000000000
mov rax, rdx
cvttsd2si r12, xmm0
add r12, rax
jmp 0x140093f4d
cmp rdi, 0x320000
jae 0x140093f1b
lea r12, [rdi + 0x8000]
jmp 0x140093f4d
cmp rdi, 0xc80000
jae 0x140093f46
mov r12, rdi
movabs rax, 0x47ae147ae147ae15
mul rdi
sub r12, rdx
shr r12, 1
add r12, rdx
shr r12, 6
add r12, rdi
jmp 0x140093f4d
lea r12, [rdi + 0x20000]
mov rax, qword [0x1401255a0]
cmp r12, rax
cmova r12, rax
mov qword [rbp + 0x68], r12
cmp cl, 2
jne 0x140093f77
test r8, r8
je 0x140093f77
mov dil, 1
mov rcx, qword [rbx + 8]
call fcn.1400d6fc8
jmp 0x140093f7a
xor dil, dil
test r12, r12
js 0x140093fa5
mov rcx, r12
call fcn.1400d6f08
mov qword [rbp + 0x88], rax
test rax, rax
je 0x140093fa5
mov byte [rbx + 0x20], 2
mov qword [rbx + 8], rax
mov qword [rbx + 0x18], r12
and byte [rbx + 0x21], 0x7f
jmp 0x140093fea
xor r14d, r14d
test dil, dil
je 0x140093fbe
mov qword [rbx + 0x18], r14
lea rax, [0x14012c4b8]
mov qword [rbx + 8], rax
jmp 0x140093fc6
mov rax, qword [rbx + 8]
mov word [rax], r14w
mov qword [rbx + 0x10], r14
mov r8, r13
lea rdx, [0x1400f5a40]
lea rcx, [0x14012c5c0]
call fcn.14004e590
test eax, eax
je 0x1400956da
jmp 0x140094013
mov rcx, qword [rbx + 8]
cmp rcx, r14
je 0x140093fff
lea r8, [rsi + rsi]
mov rdx, r14
call fcn.1400d7a30
lea rcx, [rsi + rsi]
mov rax, qword [rbx + 8]
xor r14d, r14d
mov word [rcx + rax], r14w
mov qword [rbx + 0x10], rcx
test r15d, r15d
jne 0x1400956f9
dec dword [rbp + 4]
mov rsi, qword [rbp + 8]
add rsi, 0x20
mov rax, qword [rsi + 0x18]
mov r15, qword [rbp + 0x20]
mov qword [r15 + 0x18], rax
mov qword [r15], rbx
mov dword [r15 + 0x10], 4
mov rcx, qword [rbp + 0x30]
test rcx, rcx
je 0x140093579
lea r8, [rbp + 0x40]
lea rdx, [rbp + 0x38]
call fcn.1400be180
jmp 0x1400938a1
mov edx, 1
mov rcx, qword [rdi + 0x18]
test rcx, rcx
je 0x140094097
movsxd rbx, dword [rbp]
cmp ebx, 0xc8
je 0x1400956fb
cmp rcx, r14
mov r8d, 0
cmove edx, r8d
mov qword [rbp + rbx*8 + 0x2a0], rcx
inc ebx
mov dword [rbp], ebx
jmp 0x14009409a
xor r8d, r8d
mov qword [rdi + 0x18], r12
mov rax, r14
cmp word [r14], 0
jne 0x1400940e6
mov r15, rdi
lea rbx, [0x1400f1524]
mov qword [rdi], rbx
mov dword [rdi + 0x10], 5
xor r14d, r14d
mov qword [rdi + 8], r14
mov rcx, qword [rbp + 0x30]
test rcx, rcx
je 0x140094288
lea r8, [rbp + 0x40]
lea rdx, [rbp + 0x38]
call fcn.1400be180
mov rsi, qword [rbp + 8]
jmp 0x140095352
cmp byte [r13 + 0x5d], 0
je 0x140094100
mov rsi, qword [rbp + 8]
test edx, edx
je 0x140094144
mov edx, r8d
test r15d, r15d
sete dl
jmp 0x140094144
cmp r14, qword [0x14012c420]
je 0x140094110
mov edx, 1
jmp 0x140094140
mov edx, r8d
test r15d, r15d
jne 0x140094140
mov rsi, qword [rbp + 8]
lea rcx, [rsi + 0x30]
mov eax, dword [rcx]
cmp eax, 0x44
je 0x140094144
cmp eax, 0x41
je 0x140094139
add rcx, 0x20
mov eax, dword [rcx]
cmp eax, 0x44
jne 0x140094127
jmp 0x140094144
mov edx, 1
jmp 0x140094144
mov rsi, qword [rbp + 8]
mov r15, rdi
mov qword [rdi + 8], r8
mov dword [rdi + 0x10], 5
test edx, edx
je 0x140094260
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, r14
repne scasw ax, word [rdi]
not rcx
mov rbx, rcx
mov r12, qword [rbp + 0x48]
mov rdx, r12
mov rax, qword [rbp + 0x1be8]
sub rdx, qword [rax]
sar rdx, 1
mov rax, qword [rbp + 0x1bf0]
mov rax, qword [rax]
sub rax, rdx
cmp rcx, rax
ja 0x1400941b6
lea rdi, [rcx + rcx]
mov r8, rdi
mov rdx, r14
mov rcx, r12
call fcn.1400d7a30
mov rax, r12
mov qword [r15], rax
add r12, rdi
mov qword [rbp + 0x48], r12
jmp 0x140094263
cmp rcx, 0x1001
jae 0x140094215
mov r12, qword [rbp + 0x50]
cmp r12, 0x9c40
jae 0x140094215
lea rax, [rcx + rcx]
lea rcx, [rax + 0xf]
cmp rcx, rax
ja 0x1400941e3
movabs rcx, 0xffffffffffffff0
and rcx, 0xfffffffffffffff0
mov rax, rcx
call fcn.1400e0a90
sub rsp, rcx
lea rdi, [rsp + 0x40]
lea r8, [rbx + rbx]
mov rdx, r14
mov rcx, rdi
call fcn.1400d7a30
mov rax, rdi
mov qword [r15], rax
add r12, rbx
mov qword [rbp + 0x50], r12
jmp 0x140094263
movsxd r12, dword [rbp]
cmp r12d, 0xc8
je 0x140095718
add rcx, rcx
call fcn.1400d6f08
mov rdi, rax
mov qword [rbp + r12*8 + 0x2a0], rax
test rax, rax
je 0x140095718
lea r8, [rbx + rbx]
mov rdx, r14
mov rcx, rax
call fcn.1400d7a30
mov rax, rdi
mov qword [r15], rax
inc r12d
mov dword [rbp], r12d
jmp 0x140094263
mov qword [r15], r14
mov rcx, qword [rbp + 0x30]
test rcx, rcx
je 0x14009427e
lea r8, [rbp + 0x40]
lea rdx, [rbp + 0x38]
call fcn.1400be180
jmp 0x140095348
xor r14d, r14d
lea rbx, [0x1400f1524]
mov rsi, qword [rbp + 8]
jmp 0x140095352
mov qword [r15 + 0x18], r12
mov rcx, qword [rbp + 0x30]
test rcx, rcx
je 0x1400942ab
lea r8, [rbp + 0x40]
lea rdx, [rbp + 0x38]
call fcn.1400be180
mov rsi, qword [rbp + 8]
jmp 0x1400938a1
cmp ecx, 0x20
jne 0x140094309
cmp rax, 0
je 0x14009567d
test r8d, r8d
je 0x14009567d
dec r8d
mov dword [rbp + 4], r8d
movsxd rax, r8d
mov rcx, qword [rbp + rax*8 + 0x8e0]
mov rax, qword [rcx]
mov qword [r15], rax
mov rax, qword [rcx + 8]
mov qword [r15 + 8], rax
mov rax, qword [rcx + 0x10]
mov qword [r15 + 0x10], rax
mov rax, qword [rcx + 0x18]
mov qword [r15 + 0x18], rax
mov rax, qword [rsi + 0x18]
mov qword [r15 + 0x18], rax
jmp 0x14009535d
test r8d, r8d
je 0x140095b21
dec r8d
mov dword [rbp + 4], r8d
movsxd rax, r8d
mov r12, qword [rbp + rax*8 + 0x8e0]
mov qword [rbp + 0x90], r12
cmp dword [r12 + 0x10], 8
jge 0x140095b21
cmp ecx, 0x21
jne 0x140094382
mov rsi, qword [r15 + 0x18]
test rsi, rsi
je 0x140095b21
mov rax, qword [rsi + 0x18]
mov qword [r12 + 0x18], rax
mov rax, qword [r12]
mov qword [r15], rax
mov rax, qword [r12 + 8]
mov qword [r15 + 8], rax
mov rax, qword [r12 + 0x10]
mov qword [r15 + 0x10], rax
mov rax, qword [r12 + 0x18]
mov qword [r15 + 0x18], rax
mov dword [r12 + 0x10], 1
jmp 0x140095352
cmp ecx, 0x12
jl 0x14009439b
cmp ecx, 0x13
jle 0x1400943b5
cmp ecx, 0x1f
je 0x1400943b5
cmp ecx, 0x2d
je 0x1400943b5
cmp ecx, 0x3c
je 0x1400943b5
mov rcx, r12
call fcn.1400855e0
mov edi, eax
mov dword [rbp + 0x28], eax
mov r8d, dword [rbp + 4]
lea r10, [0x140000000]
jmp 0x1400943b8
mov edi, dword [rbp + 0x28]
mov qword [rbp + 0x58], r14
mov ecx, dword [r15 + 0x10]
lea eax, [rcx - 9]
cmp eax, 0x37
ja case.0x1400943e2.15
cdqe
movzx eax, byte [r10 + rax + 0x95f28]
mov edx, dword [r10 + rax*4 + 0x95f0c]
add rdx, r10
jmp rdx
mov edx, edi
mov rcx, r12
call fcn.140085480
movsxd rcx, eax
mov qword [r15], rcx
mov dword [r15 + 0x10], 1
jmp 0x14009534f
mov edx, edi
mov rcx, r12
call fcn.140085480
xor r14d, r14d
mov ecx, r14d
test eax, eax
sete cl
mov qword [r15], rcx
mov dword [r15 + 0x10], 1
jmp 0x140095352
cmp edi, 1
jne 0x14009443d
mov edx, edi
mov rcx, r12
call fcn.1400858d0
neg rax
mov qword [r15], rax
jmp 0x1400944b2
cmp edi, 2
jne 0x140094778
mov ecx, dword [r12 + 0x10]
dec ecx
je 0x14009449e
dec ecx
je 0x140094496
sub ecx, edi
je 0x140094486
dec ecx
je 0x140094466
dec ecx
jne 0x14009447b
movapd xmm0, xmm8
jmp 0x1400944a8
mov rax, qword [r12 + 8]
test rax, rax
je 0x14009447b
pxor xmm0, xmm0
cvtsi2sd xmm0, qword [rax]
jmp 0x1400944a8
mov rcx, qword [r12]
call fcn.1400d9590
jmp 0x1400944a8
mov edx, 1
mov rcx, qword [r12]
call fcn.140024610
jmp 0x1400944a8
movsd xmm0, qword [r12]
jmp 0x1400944a8
pxor xmm0, xmm0
cvtsi2sd xmm0, qword [r12]
xorpd xmm0, xmm10
movsd qword [r15], xmm0
mov dword [r15 + 0x10], edi
jmp 0x14009534f
xor r14d, r14d
mov ebx, r14d
cmp ecx, 0x3f
setge bl
mov eax, dword [r12 + 0x10]
cmp eax, 4
jne 0x1400945f8
test edi, edi
je 0x140094599
cmp ecx, 9
je 0x1400944ec
cmp ecx, 0x3f
je 0x1400944ec
or edi, 0xffffffff
jmp 0x1400944f1
mov edi, 1
mov r13d, dword [rbp + 0x28]
mov edx, 1
cmp r13d, edx
jne 0x140094515
mov rcx, r12
call fcn.1400858d0
mov qword [r15], rax
movsxd rdx, edi
add rdx, rax
mov r8b, reloc.OLEAUT32.dll_SafeArrayGetElement
jmp 0x14009453b
mov rcx, qword [r12]
call fcn.140024610
movsd qword [r15], xmm0
movd xmm1, edi
cvtdq2pd xmm1, xmm1
addsd xmm1, xmm0
movsd qword [rbp + 0x58], xmm1
mov r8b, 0x28
mov rdx, qword [rbp + 0x58]
mov rcx, qword [r12]
call fcn.140001090
test ebx, ebx
je 0x140094590
mov rcx, qword [r12]
movzx eax, byte [rcx + 0x23]
test al, al
jne 0x14009455c
mov rax, qword [rcx + 0x10]
movzx eax, byte [rax + 0x23]
cmp al, 1
jne 0x140094570
mov qword [r15], rcx
mov dword [r15 + 0x10], 4
jmp 0x1400938a1
cmp r13d, 1
jne 0x14009457e
movsxd rax, edi
add qword [r15], rax
jmp 0x140094590
movd xmm0, edi
cvtdq2pd xmm0, xmm0
addsd xmm0, qword [r15]
movsd qword [r15], xmm0
mov dword [r15 + 0x10], r13d
jmp 0x1400938a1
cmp eax, 4
jne 0x1400945f8
mov rdx, qword [r12]
cmp byte [rdx + 0x23], r14b
jne 0x1400945ae
mov rax, qword [rdx + 0x10]
jmp 0x1400945b1
mov rax, rdx
test byte [rax + 0x21], 4
je 0x1400945c3
lea rcx, [0x14012c5c0]
call fcn.14004f190
mov rcx, qword [r12]
call fcn.1400243d0
test ebx, ebx
je 0x1400945f8
mov rcx, qword [r12]
movzx eax, byte [rcx + 0x23]
test al, al
jne 0x1400945e4
mov rax, qword [rcx + 0x10]
movzx eax, byte [rax + 0x23]
cmp al, 1
jne 0x1400945f8
mov qword [r15], rcx
mov dword [r15 + 0x10], 4
jmp 0x1400938a1
lea rbx, [0x1400f1524]
mov qword [r15], rbx
mov dword [r15 + 0x10], r14d
jmp 0x140095352
mov eax, dword [r12 + 0x10]
cmp eax, 4
jne 0x140094674
mov rcx, qword [r12]
cmp byte [rcx + 0x23], 0
jne 0x140094625
mov rax, qword [rcx + 0x10]
jmp 0x140094628
mov rax, rcx
test byte [rax + 0x21], 2
je 0x14009464f
mov dword [r15 + 0x10], 1
mov rax, qword [r12]
cmp byte [rax + 0x23], 0
jne 0x140094644
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
mov qword [r15], rax
jmp 0x14009534f
call fcn.140024490
mov dword [r15 + 0x10], 1
xor r8d, r8d
lea edx, [r8 + 1]
mov rcx, qword [r12]
call fcn.140001820
mov qword [r15], rax
jmp 0x14009534f
xor r14d, r14d
cmp eax, 6
jne 0x1400945ff
mov dword [r15 + 0x10], 1
mov rax, qword [r12]
mov qword [r15], rax
jmp 0x140095352
xor r14d, r14d
test edi, edi
jne 0x1400946a3
mov qword [r15], rbx
mov dword [r15 + 0x10], r14d
jmp 0x140095352
mov edx, r14d
cmp edi, 1
sete dl
mov rcx, r12
call fcn.1400858d0
cmp dword [r15 + 0x10], 0x3b
jne 0x1400946ce
mov ecx, 0xffffffff
cmp rax, rcx
ja 0x1400946c9
not eax
jmp 0x1400946e0
not rax
jmp 0x1400946e0
cmp rax, 0x1000
jae 0x1400946db
mov eax, r14d
jmp 0x1400946de
movzx eax, byte [rax]
cdqe
mov qword [r15], rax
mov dword [r15 + 0x10], 1
jmp 0x140095352
test r8d, r8d
je 0x140095b1e
dec r8d
mov dword [rbp + 4], r8d
movsxd rax, r8d
mov r13, qword [rbp + rax*8 + 0x8e0]
mov qword [rbp + 0x70], r13
mov eax, dword [r13 + 0x10]
cmp eax, 8
jge 0x140095b1e
cmp ecx, 0x12
jne 0x140094761
mov rax, qword [r13]
mov qword [r15], rax
mov rax, qword [r13 + 8]
mov qword [r15 + 8], rax
mov rax, qword [r13 + 0x10]
mov qword [r15 + 0x10], rax
mov rax, qword [r13 + 0x18]
mov qword [r15 + 0x18], rax
mov rax, qword [rsi + 0x18]
mov qword [r15 + 0x18], rax
cmp dword [r15 + 0x10], 6
jne 0x14009534f
mov rcx, qword [r15]
mov rax, qword [rcx]
call qword [rax + reloc.WSOCK32.dll_htonl]
jmp 0x14009534f
cmp ecx, 0x1f
jg 0x14009488f
cmp ecx, 0x13
jl 0x14009488f
cmp eax, 4
je 0x140094787
mov qword [r15], rbx
xor r14d, r14d
mov dword [r15 + 0x10], r14d
jmp 0x140095352
add ecx, 0xffffffed
cmp ecx, 0xc
ja case.default.0x1400947a1
movsxd rax, ecx
mov ecx, dword [r10 + rax*4 + 0x95f60]
add rcx, r10
jmp rcx
mov rdx, r12
mov rcx, qword [r13]
call fcn.1400bc920
test eax, eax
je 0x14009597e
mov rcx, qword [r13]
movzx eax, byte [rcx + 0x23]
test al, al
jne 0x1400947cb
mov rax, qword [rcx + 0x10]
movzx eax, byte [rax + 0x23]
xor r14d, r14d
cmp al, 2
jne 0x140094801
mov rax, qword [r12]
mov qword [r15], rax
mov rax, qword [r12 + 8]
mov qword [r15 + 8], rax
mov rax, qword [r12 + 0x10]
mov qword [r15 + 0x10], rax
mov rax, qword [r12 + 0x18]
mov qword [r15 + 0x18], rax
mov rax, qword [rsi + 0x18]
mov qword [r15 + 0x18], rax
jmp 0x140095352
mov qword [r15], rcx
mov dword [r15 + 0x10], 4
jmp 0x140095352
mov dword [r15 + 0x10], reloc.WSOCK32.dll_gethostbyname
jmp case.default.0x1400947a1
mov dword [r15 + 0x10], getservbyport
jmp case.default.0x1400947a1
mov dword [r15 + 0x10], getservbyport
jmp case.default.0x1400947a1
mov dword [r15 + 0x10], reloc.WSOCK32.dll_getservbyname
jmp case.default.0x1400947a1
mov dword [r15 + 0x10], reloc.WSOCK32.dll_getservbyport
jmp case.default.0x1400947a1
mov dword [r15 + 0x10], gethostbyname
jmp case.default.0x1400947a1
mov dword [r15 + 0x10], gethostbyname
jmp case.default.0x1400947a1
mov dword [r15 + 0x10], gethostbyname
jmp case.default.0x1400947a1
mov dword [r15 + 0x10], getservbyport
jmp case.default.0x1400947a1
mov dword [r15 + 0x10], getservbyport
jmp case.default.0x1400947a1
mov dword [r15 + 0x10], reloc.WSOCK32.dll_gethostbyaddr
jmp case.default.0x1400947a1
mov dword [r15 + 0x10], gethostbyname
mov r14, qword [r13]
mov qword [rbp + 0x58], r14
cmp dword [r15 + 0x10], 0x2d
je 0x140094c4f
test edi, edi
je 0x140094c4f
mov rcx, r13
call fcn.1400855e0
mov ebx, eax
test eax, eax
je 0x140094c4f
cmp edi, 1
jne 0x1400948c4
cmp eax, edi
jne 0x1400948c4
cmp dword [r15 + 0x10], 0x37
jne 0x1400948da
mov eax, dword [r15 + 0x10]
cmp eax, 0x33
jg 0x140094a8e
cmp eax, 0x2e
jl 0x140094a8e
xor r14d, r14d
mov edx, r14d
cmp edi, 1
sete dl
mov rcx, r12
call fcn.1400858d0
mov rdi, rax
mov edx, r14d
cmp ebx, 1
sete dl
mov rcx, r13
call fcn.1400858d0
mov rdx, rax
lea esi, [r14 + 1]
mov eax, dword [r15 + 0x10]
add eax, 0xffffffdb
cmp eax, 0x19
ja case.0x14009492d.45
cdqe
lea r8, [0x140000000]
mov ecx, dword [r8 + rax*4 + 0x95f94]
add rcx, r8
jmp rcx
lea rax, [rdx + rdi]
jmp 0x140094a82
sub rdx, rdi
mov qword [r15], rdx
jmp case.0x14009492d.45
imul rdx, rdi
mov qword [r15], rdx
jmp case.0x14009492d.45
mov rax, r14
cmp rdx, rdi
sete al
jmp 0x140094a82
mov rax, r14
cmp rdx, rdi
setne al
jmp 0x140094a82
mov rax, r14
cmp rdx, rdi
setg al
jmp 0x140094a82
mov rax, r14
cmp rdx, rdi
setl al
jmp 0x140094a82
mov rax, r14
cmp rdx, rdi
setge al
jmp 0x140094a82
mov rax, r14
cmp rdx, rdi
setle al
jmp 0x140094a82
and rdx, rdi
mov qword [r15], rdx
jmp case.0x14009492d.45
or rdx, rdi
mov qword [r15], rdx
jmp case.0x14009492d.45
xor rdx, rdi
mov qword [r15], rdx
jmp case.0x14009492d.45
mov rcx, rdi
shl rdx, cl
mov qword [r15], rdx
jmp case.0x14009492d.45
mov rcx, rdi
sar rdx, cl
mov qword [r15], rdx
jmp case.0x14009492d.45
mov rcx, rdi
shr rdx, cl
mov qword [r15], rdx
jmp case.0x14009492d.45
test rdi, rdi
jne 0x140094a05
lea rcx, [0x1400f1524]
mov qword [r15], rcx
mov esi, r14d
jmp case.0x14009492d.45
mov rax, rdx
cqo
idiv rdi
jmp 0x140094a82
test rdx, rdx
jne 0x140094a28
test rdi, rdi
jns 0x140094a28
lea rcx, [0x1400f1524]
mov qword [r15], rcx
mov esi, r14d
jmp case.0x14009492d.45
mov ebx, r14d
test rdx, rdx
sets bl
test ebx, ebx
je 0x140094a38
neg rdx
pxor xmm0, xmm0
cvtsi2sd xmm0, rdx
pxor xmm1, xmm1
cvtsi2sd xmm1, rdi
call section.text
movsd qword [r15], xmm0
test ebx, ebx
je 0x140094a71
mov rax, rdi
cqo
and eax, esi
xor rax, rdx
sub rax, rdx
je 0x140094a71
xorpd xmm0, xmm10
movsd qword [r15], xmm0
test rdi, rdi
jns 0x140094a7d
mov esi, 2
jmp case.0x14009492d.45
cvttsd2si rax, qword [r15]
mov qword [r15], rax
mov dword [r15 + 0x10], esi
jmp 0x1400952fc
xor r14d, r14d
mov r8d, r14d
cmp edi, 2
sete r8b
lea edx, [r14 + 1]
mov rcx, r12
call fcn.140085970
movapd xmm7, xmm0
mov r8d, r14d
cmp ebx, 2
sete r8b
lea edx, [r14 + 1]
mov rcx, r13
call fcn.140085970
movapd xmm6, xmm0
mov edx, dword [r15 + 0x10]
cmp edx, 0x25
jl 0x140094ad7
cmp edx, 0x2c
lea ebx, [r14 + 1]
jle 0x140094adc
mov ebx, 2
lea eax, [rdx - 0x25]
cmp eax, 0x19
ja case.0x140094afc.45
cdqe
lea r8, [0x140000000]
mov ecx, dword [r8 + rax*4 + 0x95ffc]
add rcx, r8
jmp rcx
addsd xmm6, xmm7
jmp 0x140094c41
subsd xmm6, xmm7
jmp 0x140094c41
mulsd xmm6, xmm7
jmp 0x140094c41
ucomisd xmm7, xmm8
jp 0x140094b34
jne 0x140094b34
lea rcx, [0x1400f1524]
mov qword [r15], rcx
mov ebx, r14d
jmp case.0x140094afc.45
divsd xmm6, xmm7
movsd qword [r15], xmm6
cmp edx, 0x38
jne case.0x140094afc.45
movapd xmm0, xmm6
call fcn.1400ea7b0
movsd qword [r15], xmm0
jmp case.0x140094afc.45
ucomisd xmm0, xmm7
jp 0x140094b66
mov eax, 1
je 0x140094b69
mov rax, r14
mov qword [r15], rax
jmp case.0x140094afc.45
ucomisd xmm0, xmm7
jp 0x140094b7c
mov rax, r14
je 0x140094b81
mov eax, 1
mov qword [r15], rax
jmp case.0x140094afc.45
comisd xmm0, xmm7
mov eax, 1
ja 0x140094b69
mov rax, r14
mov qword [r15], rax
jmp case.0x140094afc.45
comisd xmm7, xmm0
jmp 0x140094b8d
comisd xmm0, xmm7
mov eax, 1
jae 0x140094b69
jmp 0x140094b94
comisd xmm7, xmm0
jmp 0x140094ba9
comisd xmm8, xmm0
mov edi, 1
ja 0x140094bc7
mov edi, r14d
ucomisd xmm0, xmm8
jp 0x140094bdb
jne 0x140094bdb
comisd xmm8, xmm7
ja 0x140094b22
test edi, edi
je 0x140094c03
movapd xmm1, xmm13
movapd xmm0, xmm7
call fcn.1400ea9d0
ucomisd xmm0, xmm8
jp 0x140094b22
jne 0x140094b22
xorpd xmm6, xmm10
movapd xmm1, xmm7
movapd xmm0, xmm6
call section.text
movapd xmm6, xmm0
movsd qword [r15], xmm0
test edi, edi
je case.0x140094afc.45
movsd xmm1, qword [0x140112000]
movapd xmm0, xmm7
call fcn.1400ea9d0
andpd xmm0, xmm14
ucomisd xmm0, xmm13
jp case.0x140094afc.45
jne case.0x140094afc.45
xorpd xmm6, xmm10
movsd qword [r15], xmm6
mov dword [r15 + 0x10], ebx
jmp 0x140095300
mov eax, dword [r15 + 0x10]
add eax, 0xffffffdb
cmp eax, 3
ja 0x140094cb2
mov rcx, r12
call fcn.140085da0
mov rbx, rax
mov rcx, r13
call fcn.140085da0
mov rdi, rax
test rbx, rbx
jne 0x140094c7b
test rax, rax
je 0x140094cb2
mov eax, dword [r15 + 0x10]
cmp eax, 0x27
je 0x140094c93
cmp eax, 0x28
je 0x140094c93
mov edx, 1
xor r14d, r14d
jmp 0x140094c99
xor r14d, r14d
mov edx, r14d
mov ecx, r14d
cmp rbx, rdi
sete cl
mov rax, r14
cmp edx, ecx
sete al
mov qword [r15], rax
jmp 0x140093899
lea rdx, [rbp + 0x18e0]
mov rcx, r12
call fcn.140085a30
mov rsi, rax
lea rdx, [rbp + 0xa0]
mov rcx, r13
call fcn.140085a30
mov rbx, rax
mov edi, 1
mov eax, dword [r15 + 0x10]
add eax, 0xffffffdb
cmp eax, 8
ja case.default.0x140094cff
cdqe
lea r8, [0x140000000]
mov ecx, dword [r8 + rax*4 + 0x96064]
add rcx, r8
jmp rcx
mov rax, qword [0x1401255c8]
mov rdx, rsi
mov rcx, rbx
cmp byte [rax + 0x132], 0
jne 0x140094d1e
call fcn.1400d6a7c
jmp 0x140094d24
call qword [sym.imp.KERNEL32.dll_lstrcmpiW]
mov edx, eax
xor r14d, r14d
mov eax, r14d
test edx, edx
sete al
mov qword [r15], rax
jmp 0x1400952f8
sub rsi, rbx
nop dword [rax]
movzx ecx, word [rbx]
movzx eax, word [rbx + rsi]
sub ecx, eax
jne 0x140094d53
add rbx, 2
test eax, eax
jne 0x140094d40
xor r14d, r14d
mov eax, r14d
test ecx, ecx
sete al
mov qword [r15], rax
jmp 0x1400952f8
sub rsi, rbx
nop dword [rax]
movzx ecx, word [rbx]
movzx eax, word [rbx + rsi]
sub ecx, eax
jne 0x140094d83
add rbx, 2
test eax, eax
jne 0x140094d70
xor r14d, r14d
mov eax, r14d
test ecx, ecx
setne al
mov qword [r15], rax
jmp 0x1400952f8
mov rax, qword [0x1401255c8]
movzx ecx, byte [rax + 0x132]
test cl, cl
jne 0x140094db7
mov rdx, rsi
mov rcx, rbx
call fcn.1400d6a7c
mov edx, eax
jmp 0x140094ded
cmp cl, 2
jne 0x140094dcc
mov rdx, rsi
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_lstrcmpiW]
mov edx, eax
jmp 0x140094ded
sub rsi, rbx
nop
movzx eax, word [rbx]
cmp ax, word [rbx + rsi]
jne 0x140094de8
add rbx, 2
test ax, ax
jne 0x140094dd0
xor ecx, ecx
mov edx, ecx
jmp 0x140094ded
sbb edx, edx
sbb edx, 0xffffffff
xor r14d, r14d
mov eax, r14d
test edx, edx
setne al
mov qword [r15], rax
jmp 0x1400952f8
mov rax, qword [0x1401255c8]
movzx ecx, byte [rax + 0x132]
test cl, cl
jne 0x140094e21
mov rdx, rsi
mov rcx, rbx
call fcn.1400d6a7c
mov edx, eax
jmp 0x140094e5d
cmp cl, 2
jne 0x140094e36
mov rdx, rsi
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_lstrcmpiW]
mov edx, eax
jmp 0x140094e5d
sub rsi, rbx
nop dword [rax]
movzx eax, word [rbx]
cmp ax, word [rbx + rsi]
jne 0x140094e58
add rbx, 2
test ax, ax
jne 0x140094e40
xor ecx, ecx
mov edx, ecx
jmp 0x140094e5d
sbb edx, edx
sbb edx, 0xffffffff
xor r14d, r14d
mov eax, r14d
test edx, edx
setg al
mov qword [r15], rax
jmp 0x1400952f8
mov rax, qword [0x1401255c8]
movzx ecx, byte [rax + 0x132]
test cl, cl
jne 0x140094e91
mov rdx, rsi
mov rcx, rbx
call fcn.1400d6a7c
mov edx, eax
jmp 0x140094ecd
cmp cl, 2
jne 0x140094ea6
mov rdx, rsi
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_lstrcmpiW]
mov edx, eax
jmp 0x140094ecd
sub rsi, rbx
nop dword [rax]
movzx eax, word [rbx]
cmp ax, word [rbx + rsi]
jne 0x140094ec8
add rbx, 2
test ax, ax
jne 0x140094eb0
xor ecx, ecx
mov edx, ecx
jmp 0x140094ecd
sbb edx, edx
sbb edx, 0xffffffff
xor r14d, r14d
mov eax, r14d
test edx, edx
sets al
mov qword [r15], rax
jmp 0x1400952f8
mov rax, qword [0x1401255c8]
movzx ecx, byte [rax + 0x132]
test cl, cl
jne 0x140094f01
mov rdx, rsi
mov rcx, rbx
call fcn.1400d6a7c
mov edx, eax
jmp 0x140094f3d
cmp cl, 2
jne 0x140094f16
mov rdx, rsi
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_lstrcmpiW]
mov edx, eax
jmp 0x140094f3d
sub rsi, rbx
nop dword [rax]
movzx eax, word [rbx]
cmp ax, word [rbx + rsi]
jne 0x140094f38
add rbx, 2
test ax, ax
jne 0x140094f20
xor ecx, ecx
mov edx, ecx
jmp 0x140094f3d
sbb edx, edx
sbb edx, 0xffffffff
xor r14d, r14d
mov eax, r14d
cmp edx, 0xffffffff
setg al
mov qword [r15], rax
jmp 0x1400952f8
mov rax, qword [0x1401255c8]
movzx ecx, byte [rax + 0x132]
test cl, cl
jne 0x140094f72
mov rdx, rsi
mov rcx, rbx
call fcn.1400d6a7c
mov edx, eax
jmp 0x140094fad
cmp cl, 2
jne 0x140094f87
mov rdx, rsi
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_lstrcmpiW]
mov edx, eax
jmp 0x140094fad
sub rsi, rbx
nop word [rax + rax]
movzx eax, word [rbx]
cmp ax, word [rbx + rsi]
jne 0x140094fa8
add rbx, 2
test ax, ax
jne 0x140094f90
xor ecx, ecx
mov edx, ecx
jmp 0x140094fad
sbb edx, edx
sbb edx, 0xffffffff
xor r14d, r14d
mov eax, r14d
cmp edx, edi
setl al
mov qword [r15], rax
jmp 0x1400952f8
cmp dword [r12 + 0x10], 4
jne 0x140094fd6
mov rcx, qword [r12]
call fcn.1400248d0
mov r15, rax
jmp 0x140094fe9
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rsi
repne scasw ax, word [rdi]
not rcx
lea r15, [rcx - 1]
test r14, r14
je 0x140095018
mov r8, r15
mov rdx, rsi
mov rcx, r14
call fcn.1400bddd0
test eax, eax
je 0x140095018
mov r15, qword [rbp + 0x20]
mov qword [r15], r14
mov dword [r15 + 0x10], 4
mov rsi, qword [rbp + 8]
jmp 0x140095348
cmp dword [r13 + 0x10], 4
jne 0x14009502d
mov rcx, qword [r13]
call fcn.1400248d0
mov r14, rax
jmp 0x140095040
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rbx
repne scasw ax, word [rdi]
not rcx
lea r14, [rcx - 1]
lea r12, [r14 + r15 + 1]
cmp qword [rbp + 0x58], 0
jne 0x1400951d5
mov rcx, qword [rbp + 0x60]
mov edx, dword [rbp + 4]
mov rax, qword [rbp + 8]
test rcx, rcx
je 0x140095073
test edx, edx
jne 0x140095073
cmp dword [rax + 0x30], 0x44
jne 0x140095073
mov rdi, rcx
lea r13d, [rdx + 1]
jmp 0x1400950b8
cmp dword [rax + 0x30], 0x13
jne 0x1400951d5
test edx, edx
je 0x1400951d5
movsxd rdi, edx
mov rdi, qword [rbp + rdi*8 + 0x8d8]
cmp dword [rdi + 0x10], 4
jne 0x1400951d5
mov rdi, qword [rdi]
movzx eax, byte [rdi + 0x23]
test al, al
jne 0x1400950ad
mov rax, qword [rdi + 0x10]
movzx eax, byte [rax + 0x23]
cmp al, 1
jne 0x1400951d5
xor r13d, r13d
test rdi, rdi
je 0x1400951d1
xor r8d, r8d
xor edx, edx
mov rcx, rdi
call fcn.140001820
lea rcx, [0x14012c4b8]
cmp rax, rcx
mov ecx, 0
cmove rax, rcx
cmp rax, rbx
jne 0x14009513e
mov r8, r15
mov rdx, rsi
mov rcx, rdi
call fcn.1400bddd0
test eax, eax
je 0x1400951d1
test r13d, r13d
jne 0x140095e43
mov rsi, qword [rbp + 8]
add rsi, 0x20
mov rax, qword [rsi + 0x18]
mov r15, qword [rbp + 0x20]
mov qword [r15 + 0x18], rax
mov eax, dword [rbp + 4]
dec eax
mov dword [rbp + 4], eax
cdqe
mov rcx, qword [rbp + rax*8 + 0x8e0]
mov rax, qword [rcx]
mov qword [r15], rax
mov dword [r15 + 0x10], 4
jmp 0x140095348
cmp rax, rsi
je 0x1400951d1
lea r8, [r12 - 1]
mov byte [rsp + 0x20], 1
xor r9d, r9d
xor edx, edx
mov rcx, rdi
call fcn.1400bd640
test eax, eax
je 0x14009597e
xor r8d, r8d
lea edx, [r8 + 1]
mov rcx, rdi
call fcn.140001820
mov r12, rax
test r14, r14
je 0x14009518c
lea r8, [r14 + r14]
mov rdx, rbx
mov rcx, rax
call fcn.1400d7a30
lea r8, [r15 + r15 + 2]
lea rcx, [r12 + r14*2]
mov rdx, rsi
call fcn.1400d7a30
cmp byte [rdi + 0x23], 0
jne 0x1400951a7
mov rdi, qword [rdi + 0x10]
cmp byte [rdi + 0x23], 2
jne 0x1400951c8
cmp qword [0x14012d240], 0
je 0x1400951c8
lea rcx, [0x14012d228]
call fcn.140006f20
jmp 0x1400950fc
and byte [rdi + 0x21], 0x86
jmp 0x1400950fc
mov r13, qword [rbp + 0x70]
mov rdx, qword [rbp + 0x48]
mov rcx, rdx
mov rax, qword [rbp + 0x1be8]
sub rcx, qword [rax]
sar rcx, 1
mov rax, qword [rbp + 0x1bf0]
mov eax, dword [rax]
sub eax, ecx
cdqe
cmp r12, rax
ja 0x14009520f
mov rdi, qword [rbp + 0x20]
mov qword [rdi], rdx
lea rdx, [rdx + r12*2]
mov qword [rbp + 0x48], rdx
jmp 0x14009529a
cmp r12, 0x1001
jae 0x140095260
mov rdx, qword [rbp + 0x50]
cmp rdx, 0x9c40
jae 0x140095260
lea rax, [r12 + r12]
lea rcx, [rax + 0xf]
cmp rcx, rax
ja 0x14009523c
movabs rcx, 0xffffffffffffff0
and rcx, 0xfffffffffffffff0
mov rax, rcx
call fcn.1400e0a90
sub rsp, rcx
lea rax, [rsp + 0x40]
mov rdi, qword [rbp + 0x20]
mov qword [rdi], rax
add rdx, r12
mov qword [rbp + 0x50], rdx
jmp 0x14009529a
mov edi, dword [rbp]
cmp edi, 0xc8
je 0x140095762
lea rcx, [r12 + r12]
call fcn.1400d6f08
movsxd r12, edi
mov qword [rbp + r12*8 + 0x2a0], rax
mov rdi, qword [rbp + 0x20]
mov qword [rdi], rax
test rax, rax
je 0x14009575f
inc r12d
mov dword [rbp], r12d
test r14, r14
je 0x1400952ae
lea r8, [r14 + r14]
mov rdx, rbx
mov rcx, qword [rdi]
call fcn.1400d7a30
lea r8, [r15 + r15 + 2]
mov r15, qword [rbp + 0x20]
mov rax, qword [r15]
lea rcx, [rax + r14*2]
mov rdx, rsi
call fcn.1400d7a30
cmp dword [r13 + 0x10], 0
je 0x1400952f2
mov rax, qword [rbp + 0x90]
cmp dword [rax + 0x10], 0
je 0x1400952f2
mov edi, 5
xor r14d, r14d
mov qword [r15 + 8], r14
jmp 0x1400952f8
lea rcx, [0x1400f1524]
mov qword [r15], rcx
xor r14d, r14d
mov edi, r14d
mov dword [r15 + 0x10], edi
mov rsi, qword [rbp + 8]
mov rdi, qword [rbp + 0x58]
test rdi, rdi
je 0x140093579
mov rdx, r15
mov rcx, rdi
call fcn.1400bc920
test eax, eax
je 0x140095981
movzx eax, byte [rdi + 0x23]
test al, al
jne 0x140095330
mov rax, qword [rdi + 0x10]
movzx eax, byte [rax + 0x23]
lea rbx, [0x1400f1524]
cmp al, 2
je 0x140095352
mov qword [r15], rdi
mov dword [r15 + 0x10], 4
jmp 0x140095352
lea rbx, [0x1400f1524]
xor r14d, r14d
cmp qword [r15 + 0x18], 0
je 0x140095611
mov rcx, r15
call fcn.1400855e0
mov edx, eax
mov ecx, dword [r15 + 0x10]
dec edx
je 0x14009543c
dec edx
je 0x1400953d7
cmp ecx, 6
je 0x1400953cd
cmp ecx, 4
jne 0x140095394
mov rax, qword [r15]
cmp byte [rax + 0x23], 0
jne 0x14009538e
mov rax, qword [rax + 0x10]
test byte [rax + 0x21], 2
jne 0x1400953cd
test ecx, ecx
je 0x1400953c1
dec ecx
je 0x1400953bc
dec ecx
je 0x1400953bc
sub ecx, 2
je 0x1400953ab
dec ecx
je 0x1400953c1
jmp 0x1400953bc
xor r8d, r8d
lea edx, [r8 + 1]
mov rcx, qword [r15]
call fcn.140001820
jmp 0x1400953c4
mov rax, rbx
jmp 0x1400953c4
mov rax, qword [r15]
cmp word [rax], 0
jmp 0x1400955b1
mov ebx, 1
jmp 0x1400955b7
dec ecx
je 0x140095422
dec ecx
je 0x14009541b
sub ecx, 2
je 0x14009540c
dec ecx
je 0x1400953ee
dec ecx
je 0x140095434
jmp 0x140095402
mov rax, qword [r15 + 8]
test rax, rax
je 0x140095402
pxor xmm0, xmm0
cvtsi2sd xmm0, qword [rax]
jmp 0x14009542b
mov rcx, qword [r15]
call fcn.1400d9590
jmp 0x14009542b
mov edx, 1
mov rcx, qword [r15]
call fcn.140024610
jmp 0x14009542b
movsd xmm0, qword [r15]
jmp 0x14009542b
pxor xmm0, xmm0
cvtsi2sd xmm0, qword [r15]
ucomisd xmm0, xmm8
jp 0x1400953cd
jne 0x1400953cd
mov ebx, r14d
jmp 0x1400955b7
dec ecx
je 0x1400955ab
dec ecx
je 0x1400955a4
sub ecx, 2
je 0x1400954f6
dec ecx
je 0x140095465
dec ecx
jne 0x140095476
mov rdi, r14
jmp 0x1400955ae
mov rdi, qword [r15 + 8]
test rdi, rdi
je 0x140095476
mov rdi, qword [rdi]
jmp 0x1400955ae
mov rdi, qword [r15]
mov rax, rdi
nop dword [rax]
movzx ecx, word [rax]
cmp cx, 0x20
je 0x14009548f
cmp cx, 9
jne 0x140095495
add rax, 2
jmp 0x140095480
movzx ecx, word [rax]
test cx, cx
je 0x1400954e6
cmp cx, 0x2d
je 0x1400954a9
cmp cx, 0x2b
jne 0x1400954ad
add rax, 2
cmp word [rax], 0x30
jne 0x1400954e6
movzx edx, word [rax + 2]
cmp dx, 0x78
je 0x1400954c3
cmp dx, 0x58
jne 0x1400954e6
movzx ecx, word [rax + 4]
call fcn.1400d6b84
test eax, eax
je 0x1400954e6
xor edx, edx
lea r8d, [rdx + 0x10]
mov rcx, rdi
call fcn.1400d6e8c
mov rdi, rax
jmp 0x1400955ae
mov rcx, rdi
call fcn.1400d6efc
mov rdi, rax
jmp 0x1400955ae
mov rbx, qword [r15]
cmp byte [rbx + 0x23], 0
jne 0x140095503
mov rbx, qword [rbx + 0x10]
test byte [rbx + 0x21], 0x10
je 0x140095511
mov rdi, qword [rbx]
jmp 0x1400955ae
xor r8d, r8d
lea edx, [r8 + 1]
mov rcx, rbx
call fcn.140001820
mov rdi, rax
movzx ecx, word [rax]
cmp cx, 0x20
je 0x140095532
cmp cx, 9
jne 0x140095538
add rax, 2
jmp 0x140095523
movzx ecx, word [rax]
test cx, cx
je 0x140095583
cmp cx, 0x2d
je 0x14009554c
cmp cx, 0x2b
jne 0x140095550
add rax, 2
cmp word [rax], 0x30
jne 0x140095583
movzx ecx, word [rax + 2]
cmp cx, 0x78
je 0x140095566
cmp cx, 0x58
jne 0x140095583
movzx ecx, word [rax + 4]
call fcn.1400d6b84
test eax, eax
je 0x140095583
xor edx, edx
lea r8d, [rdx + 0x10]
mov rcx, rdi
call fcn.1400d6e8c
jmp 0x14009558b
mov rcx, rdi
call fcn.1400d6efc
mov rdi, rax
test byte [rbx + 0x21], 0x80
jne 0x1400955ae
mov r8b, reloc.WSOCK32.dll_recv
mov rdx, rax
mov rcx, rbx
call fcn.140001090
jmp 0x1400955ae
cvttsd2si rdi, qword [r15]
jmp 0x1400955ae
mov rdi, qword [r15]
test rdi, rdi
mov ebx, r14d
setne bl
cmp dword [r15 + 0x10], 6
jne 0x1400955c7
mov rcx, qword [r15]
mov rax, qword [rcx]
call qword [rax + reloc.WSOCK32.dll_recv]
mov rcx, qword [r15 + 0x18]
cmp dword [rcx + 0x10], 0x21
je 0x140095600
mov eax, r14d
cmp dword [rcx + 0x10], 0x22
sete al
cmp ebx, eax
jne 0x140095607
mov rsi, rcx
mov rcx, qword [rcx + 0x18]
test rcx, rcx
je 0x1400955f1
cmp dword [rcx + 0x10], 0x21
jne 0x1400955d1
movsxd rax, ebx
mov qword [r15], rax
mov qword [r15 + 0x18], rcx
jmp 0x140093899
test ebx, ebx
jne 0x140095607
mov rsi, rcx
mov r8d, dword [rbp + 4]
mov r12d, dword [rbp + 0x14]
jmp 0x14009565a
movsxd rdi, dword [rbp + 0x14]
movsxd r8, dword [rbp + 4]
mov rbx, r8
cmp rdi, r8
jle 0x140095644
dec rdi
mov rcx, qword [rbp + rdi*8 + 0x8e0]
cmp dword [rcx + 0x10], 6
jne 0x14009563b
mov rcx, qword [rcx]
mov rax, qword [rcx]
call qword [rax + reloc.WSOCK32.dll_recv]
cmp rdi, rbx
jg 0x140095621
mov r8d, dword [rbp + 4]
mov qword [rbp + rbx*8 + 0x8e0], r15
inc r8d
mov dword [rbp + 4], r8d
mov r12d, r8d
mov dword [rbp + 0x14], r8d
mov r13, qword [rbp + 0x48]
lea rbx, [0x1400f1524]
lea r10, [0x140000000]
movabs r9, 0xffffffffffffff0
lea r11, [0x140077ce0]
add rsi, 0x20
jmp 0x1400934ad
mov r9, qword [r15]
mov r9, qword [r9 + 0x28]
xor r8d, r8d
lea rdx, [0x1400f5a40]
mov rcx, qword [rbp + 0x1bc0]
call fcn.14004e200
jmp 0x140095981
mov rdi, qword [rbp + 0x20]
mov rcx, qword [rdi + 0x18]
test rcx, rcx
je 0x1400956bb
call fcn.1400d6fc8
nop
mov rcx, qword [rbp + 0x30]
test rcx, rcx
je 0x140095e43
lea r8, [rbp + 0x40]
lea rdx, [rbp + 0x38]
call fcn.1400be180
jmp 0x140095e43
mov rcx, qword [rbp + 0x30]
test rcx, rcx
je 0x14009597e
lea r8, [rbp + 0x40]
lea rdx, [rbp + 0x38]
call fcn.1400be180
jmp 0x14009597e
jmp 0x1400956bb
mov r9, qword [r13 + 8]
xor r8d, r8d
lea rdx, [0x1400f5a40]
mov rcx, qword [rbp + 0x1bc0]
call fcn.14004e200
nop
jmp 0x1400956da
mov r9, qword [r13 + 8]
xor r8d, r8d
lea rdx, [0x1400f5a40]
mov rcx, qword [rbp + 0x1bc0]
call fcn.14004e200
nop
jmp 0x1400956da
mov rsi, qword [rbp + 0x18]
cmp dword [rdi], 1
cmovne rsi, r14
mov rcx, qword [rbp + 0x30]
test rcx, rcx
je case.0x140095878.3
lea r8, [rbp + 0x40]
lea rdx, [rbp + 0x38]
call fcn.1400be180
jmp case.0x140095878.3
mov edi, dword [rbp]
lea r9, [0x1400f1524]
xor r8d, r8d
lea rdx, [0x1400f5a40]
mov rcx, qword [rbp + 0x1bc0]
call fcn.14004e200
xor r14d, r14d
jmp 0x140095984
mov r15, qword [rbp + 0x1bc0]
movzx eax, byte [r15]
cmp al, 3
je 0x140095e43
cmp r8d, 1
jne 0x140095b21
mov rdi, qword [rbp + 0x8e0]
mov r13, qword [rbp + 0x60]
test r13, r13
je 0x1400957cc
mov rdx, rdi
mov rcx, r13
call fcn.1400bc920
test eax, eax
je 0x140095981
jmp 0x140095e43
cmp al, 0x11
je 0x140095a93
cmp al, 0x6b
je 0x140095a93
cmp al, 0x6c
je 0x140095a93
mov r9, qword [rbp + 0x1bd8]
test r9, r9
je 0x140095855
mov eax, dword [rdi + 0x10]
cmp eax, 1
je 0x140095843
cmp eax, 2
je 0x140095843
cmp eax, 6
je 0x140095843
cmp eax, 4
jne 0x140095855
mov rax, qword [rdi]
cmp byte [rax + 0x23], 0
jne 0x140095814
mov rax, qword [rax + 0x10]
test byte [rax + 0x21], 2
je 0x140095855
mov dword [r9 + 0x10], 6
mov rcx, qword [rdi]
cmp byte [rcx + 0x23], 0
jne 0x14009582f
mov rcx, qword [rcx + 0x10]
mov rcx, qword [rcx]
mov qword [r9], rcx
mov rax, qword [rcx]
call qword [rax + reloc.WSOCK32.dll_htonl]
mov rax, rbx
jmp 0x140095eaf
mov dword [r9 + 0x10], eax
mov rax, qword [rdi]
mov qword [r9], rax
mov rax, rbx
jmp 0x140095eaf
mov rbx, qword [rbp + 0x1be0]
mov rsi, qword [rbx]
movsxd r8, dword [rdi + 0x10]
cmp r8d, 6
ja case.0x140095878.3
mov edx, dword [r10 + r8*4 + 0x96088]
add rdx, r10
jmp rdx
mov rdx, rsi
mov rcx, qword [rdi]
call fcn.140001000
mov rdi, rax
xor eax, eax
or rcx, 0xffffffffffffffff
repne scasw ax, word [rdi]
not rcx
add rcx, rcx
add qword [rbx], rcx
jmp case.0x140095878.3
mov r8, qword [0x1401255c8]
add r8, 0x94
movsd xmm3, qword [rdi]
movq r9, xmm3
mov edx, 0x100
mov rcx, rsi
call fcn.1400b9310
inc eax
movsxd rcx, eax
add rcx, rcx
add qword [rbx], rcx
jmp case.0x140095878.3
cmp r8d, 4
jne 0x1400958f9
xor r8d, r8d
lea edx, [r8 + 1]
mov rcx, qword [rdi]
call fcn.140001820
mov r14, rax
mov rcx, qword [rdi]
call fcn.1400248d0
lea rdi, [rax + 1]
jmp 0x14009590e
mov r14, qword [rdi]
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, r14
repne scasw ax, word [rdi]
not rcx
mov rdi, rcx
movsxd rcx, dword [rbp + 0x1bc8]
shl rcx, 5
mov rax, qword [r15 + 8]
movzx edx, word [rcx + rax + 2]
mov eax, 0xff
cmp dx, ax
jb 0x14009592f
movzx eax, dx
inc eax
movsxd rcx, eax
add rcx, qword [rbp + 0x1c00]
cmp rdi, rcx
jbe 0x140095a67
mov rax, qword [rbp + 0x1bf0]
mov r12, qword [rax]
sub r12, rcx
add r12, rdi
lea rcx, [r12 + r12]
call fcn.1400d6f08
mov rbx, rax
test rax, rax
jne 0x140095996
lea r9, [0x1400f1524]
xor r8d, r8d
lea rdx, [0x1400f5a40]
mov rcx, r15
call fcn.14004e200
xor r14d, r14d
mov edi, dword [rbp]
mov rsi, r14
mov rax, qword [rbp + 0x1bd0]
mov dword [rax], r14d
jmp 0x140095e4a
mov esi, dword [0x14012c430]
cmp r12, 0x400000
jbe 0x1400959ad
inc esi
mov dword [0x14012c430], esi
mov rax, qword [rbp + 0x1be8]
mov rdx, qword [rax]
mov r15, qword [rbp + 0x1be0]
mov r13, qword [r15]
sub r13, rdx
sar r13, 1
je 0x1400959d6
lea r8, [r13 + r13]
mov rcx, rbx
call fcn.1400d7a30
lea rcx, [rbx + r13*2]
mov qword [rbp + 0x18], rcx
mov qword [r15], rcx
lea r8, [rdi + rdi]
mov rdx, r14
call fcn.1400d7a30
mov r13, qword [rbp + 0x1be8]
mov rcx, qword [r13]
call fcn.1400d6fc8
mov r10, qword [rbp + 0x1bf0]
mov r11, qword [r10]
cmp r11, 0x400000
jbe 0x140095a18
dec esi
mov dword [0x14012c430], esi
mov rdx, qword [r13]
lea r9, [rdx + r11*2]
mov eax, dword [rbp + 0x1bc8]
test eax, eax
jle 0x140095a57
mov rcx, qword [rbp + 0x1bf8]
mov r8d, eax
mov rax, qword [rcx]
cmp rax, rdx
jb 0x140095a4e
cmp rax, r9
jae 0x140095a4e
sub rax, rdx
sar rax, 1
lea rax, [rbx + rax*2]
mov qword [rcx], rax
add rcx, 8
dec r8
jne 0x140095a34
mov qword [r13], rbx
mov qword [r10], r12
mov rsi, qword [rbp + 0x18]
mov rbx, r15
jmp 0x140095a7b
mov rcx, qword [rbx]
cmp rcx, r14
je 0x140095a7b
lea r8, [rdi + rdi]
mov rdx, r14
call fcn.1400d7a30
lea rax, [rdi + rdi]
add qword [rbx], rax
jmp case.0x140095878.3
lea rsi, [0x1400f1524]
jmp case.0x140095878.3
movsxd rax, dword [rdi + 0x10]
cmp eax, 6
ja case.0x140095aa7.3
mov ecx, dword [r10 + rax*4 + 0x960a4]
add rcx, r10
jmp rcx
cmp qword [rdi], 0
mov r14d, 0
setne r14b
jmp 0x140095b08
movsd xmm0, qword [rdi]
ucomisd xmm0, xmm8
jp case.0x140095aa7.6
je 0x140095b08
mov r14d, 1
jmp 0x140095b08
mov rax, qword [rdi + 8]
test rax, rax
je case.0x140095aa7.0
cmp qword [rax], 0
mov r14d, 0
setne r14b
jmp 0x140095b08
mov rcx, qword [rdi]
call fcn.140085190
mov r14d, eax
jmp 0x140095b08
mov rcx, qword [rdi]
call fcn.1400853b0
mov r14d, eax
jmp 0x140095b08
mov r14d, dword [rbp + 0x1bc8]
lea rax, [0x1400f566c]
mov rsi, rbx
test r14d, r14d
cmovne rsi, rax
jmp case.0x140095878.3
xor r14d, r14d
mov r13, qword [rbp + 0x60]
mov rsi, qword [rbp + 0x18]
test r13, r13
je case.0x140095878.3
test rsi, rsi
je case.0x140095878.3
movzx edx, byte [r13 + 0x23]
test dl, dl
jne 0x140095b61
mov byte [rsp + 0x20], 1
xor r9d, r9d
or r8, 0xffffffffffffffff
mov rdx, rsi
mov rcx, qword [r13 + 0x10]
call fcn.1400bd640
jmp 0x140095e0b
cmp qword [r13 + 8], rsi
jne 0x140095b70
mov rbx, qword [r13 + 0x10]
shr rbx, 1
jmp 0x140095b83
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rsi
repne scasw ax, word [rdi]
not rcx
lea rbx, [rcx - 1]
lea rax, [rbx + 1]
lea rdi, [rax + rax]
cmp dl, 2
jne 0x140095ba0
mov rdx, rbx
mov rcx, rsi
call fcn.140006da0
jmp 0x140095e0b
cmp rdi, qword [0x1401255a0]
jbe 0x140095bbb
cmp rdi, qword [r13 + 0x18]
jbe 0x140095bbb
lea rdx, [0x140110420]
jmp 0x140095df8
cmp rax, 2
movzx eax, byte [r13 + 0x21]
jae 0x140095c38
test al, 2
je 0x140095bda
and al, 0x3d
mov byte [r13 + 0x21], al
mov rcx, qword [r13]
mov rax, qword [rcx]
call qword [rax + reloc.WSOCK32.dll_recv]
mov qword [r13 + 0x10], r14
and byte [r13 + 0x21], 0x82
movzx ecx, byte [r13 + 0x20]
dec ecx
je 0x140095c09
dec ecx
jne case.0x140095878.3
mov rax, qword [r13 + 0x18]
test rax, rax
je case.0x140095878.3
cmp rax, 0x1000
ja 0x140095c16
mov rax, qword [r13 + 8]
mov word [rax], r14w
jmp case.0x140095878.3
mov rcx, qword [r13 + 8]
call fcn.1400d6fc8
mov qword [r13 + 0x18], r14
lea rax, [0x14012c4b8]
mov qword [r13 + 8], rax
and byte [r13 + 0x21], 0x7f
jmp case.0x140095878.3
test al, 2
je 0x140095c4c
and al, 0x3d
mov byte [r13 + 0x21], al
mov rcx, qword [r13]
mov rax, qword [rcx]
call qword [rax + reloc.WSOCK32.dll_recv]
and byte [r13 + 0x21], 0x82
mov rcx, qword [r13 + 0x18]
cmp rdi, rcx
jbe 0x140095e1b
movzx r8d, byte [r13 + 0x20]
movzx eax, r8b
cmp r8b, 1
jbe 0x140095c84
cmp al, 2
je 0x140095cc9
mov r12, qword [rbp + 0x1bc0]
mov rax, qword [rbp + 0x1bc0]
jmp 0x140095dc0
cmp rdi, 0x80
ja 0x140095cc9
cmp rdi, 8
ja 0x140095c9b
mov r12d, 8
jmp 0x140095cae
mov r12d, 0x80
cmp rdi, 0x10
mov eax, reloc.WSOCK32.dll_recv
cmovbe r12d, eax
mov rcx, r12
call fcn.1400b60a0
test rax, rax
je 0x140095e0f
mov byte [r13 + 0x20], 1
jmp 0x140095dc0
cmp rdi, 0x20
jae 0x140095cda
mov r12d, SafeArrayAllocDescriptor
jmp 0x140095d7f
cmp rdi, 0x208
jae 0x140095cee
mov r12d, 0x208
jmp 0x140095d7f
cmp rdi, 0x50000
jae 0x140095d3b
pxor xmm0, xmm0
cvtsi2sd xmm0, rdi
test rdi, rdi
jns 0x140095d0a
addsd xmm0, xmm11
mulsd xmm0, xmm12
xor eax, eax
comisd xmm0, xmm9
jbe 0x140095d31
subsd xmm0, xmm9
comisd xmm0, xmm9
jae 0x140095d31
movabs rdx, 0x8000000000000000
mov rax, rdx
cvttsd2si r12, xmm0
add r12, rax
jmp 0x140095d7f
cmp rdi, 0x320000
jae 0x140095d4d
lea r12, [rdi + 0x8000]
jmp 0x140095d7f
cmp rdi, 0xc80000
jae 0x140095d78
mov r12, rdi
movabs rax, 0x47ae147ae147ae15
mul rdi
sub r12, rdx
shr r12, 1
add r12, rdx
shr r12, 6
add r12, rdi
jmp 0x140095d7f
lea r12, [rdi + 0x20000]
mov rax, qword [0x1401255a0]
cmp r12, rax
cmova r12, rax
cmp r8b, 2
jne 0x140095da6
test rcx, rcx
je 0x140095da6
mov dil, 1
mov rcx, qword [r13 + 8]
call fcn.1400d6fc8
jmp 0x140095da9
xor dil, dil
test r12, r12
js 0x140095dcf
mov rcx, r12
call fcn.1400d6f08
test rax, rax
je 0x140095dcf
mov byte [r13 + 0x20], 2
mov qword [r13 + 8], rax
mov qword [r13 + 0x18], r12
and byte [r13 + 0x21], 0x7f
jmp 0x140095e1b
test dil, dil
je 0x140095de5
mov qword [r13 + 0x18], r14
lea rax, [0x14012c4b8]
mov qword [r13 + 8], rax
jmp 0x140095ded
mov rax, qword [r13 + 8]
mov word [rax], r14w
mov qword [r13 + 0x10], r14
lea rdx, [0x1400f5a40]
lea r8, [0x1400f1524]
lea rcx, [0x14012c5c0]
call fcn.14004e590
test eax, eax
jne case.0x140095878.3
mov rax, qword [rbp + 0x1bd0]
mov dword [rax], r14d
jmp case.0x140095878.3
mov rcx, qword [r13 + 8]
cmp rcx, rsi
je 0x140095e30
lea r8, [rbx + rbx]
mov rdx, rsi
call fcn.1400d7a30
lea rcx, [rbx + rbx]
mov rax, qword [r13 + 8]
mov word [rcx + rax], r14w
mov qword [r13 + 0x10], rcx
jmp case.0x140095878.3
mov rsi, qword [rbp + 0x18]
mov edi, dword [rbp]
movsxd rdi, edi
test rdi, rdi
je 0x140095e75
nop word [rax + rax]
dec rdi
mov rcx, qword [rbp + rdi*8 + 0x2a0]
call fcn.1400d6fc8
test rdi, rdi
jne 0x140095e60
movsxd rbx, dword [rbp + 0x14]
test ebx, ebx
je 0x140095eac
lea rdi, [rbp + rbx*8 + 0x8e0]
nop word [rax + rax]
dec ebx
sub rdi, 8
mov rcx, qword [rdi]
cmp dword [rcx + 0x10], 6
jne 0x140095ea8
mov rcx, qword [rcx]
mov rdx, qword [rcx]
call qword [rdx + reloc.WSOCK32.dll_recv]
test ebx, ebx
jne 0x140095e90
mov rax, rsi
movaps xmm6, xmmword [rbp + 0x1b60]
movaps xmm7, xmmword [rbp + 0x1b50]
movaps xmm8, xmmword [rbp + 0x1b40]
movaps xmm9, xmmword [rbp + 0x1b30]
movaps xmm10, xmmword [rbp + 0x1b20]
movaps xmm11, xmmword [rbp + 0x1b10]
movaps xmm12, xmmword [rbp + 0x1b00]
movaps xmm13, xmmword [rbp + 0x1af0]
movaps xmm14, xmmword [rbp + 0x1ae0]
lea rsp, [rbp + 0x1b78]
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret