Function at 0x1800459d0
Capabilities:
Parse pe header

Disassembly:
push rbp
push rbx
push rdi
lea rbp, [rsp - 0x47]
sub rsp, 0x100
xor eax, eax
mov rdi, rcx
mov qword [rcx], rax
mov rbx, rdx
mov qword [rcx + 8], rax
mov qword [rcx + 0x10], rax
mov qword [rcx + 0x18], rax
mov qword [rcx + 0x20], rax
mov qword [rcx + 0x28], rax
mov byte [rcx + 0x40], al
mov dword [rcx + 0x44], 0x539
mov qword [rcx + 0x30], rax
mov qword [rcx + 0x38], rax
mov rcx, qword [0x180b5ed00]
test rcx, rcx
je 0x1800464ca
cmp rcx, qword [0x180b5ef08]
je 0x1800464ca
movzx edx, word [0x1802383e8]
mov rax, qword [0x180b60468]
vmovsd xmm0, qword [str.UFZgYCYMUI_]
mov r8, qword [rax + 0x208]
movzx eax, byte [reloc.WLDAP32.dll_Ordinal_60]
vmovsd qword [rbp - 0x59], xmm0
xor byte [rbp - 0x58], 0x33
xor al, 0x3c
xor byte [rbp - 0x57], 0x34
xor byte [rbp - 0x56], 0x35
xor byte [rbp - 0x55], 0x36
xor byte [rbp - 0x54], 0x37
xor byte [rbp - 0x53], 0x38
xor byte [rbp - 0x52], 0x39
mov word [rbp - 0x51], dx
xor dl, 0x3a
xor byte [rbp - 0x50], 0x3b
mov byte [rbp - 0x51], dl
lea rdx, [rbp - 0x59]
mov byte [rbp - 0x59], 0x67
mov byte [rbp - 0x4f], al
call r8
test eax, eax
je 0x1800464ca
mov r9, qword [0x180b5ecf8]
test r9, r9
je 0x180045ab1
mov rax, qword [0x180b5ef08]
cmp r9, rax
jne 0x180045b29
movzx ecx, word [0x1802383e8]
lea rdx, [rbp - 0x19]
mov rax, qword [0x180b60468]
vmovsd xmm0, qword [str.UFZgYCYMUI_]
mov r8, qword [rax + 0x50]
movzx eax, byte [reloc.WLDAP32.dll_Ordinal_60]
vmovsd qword [rbp - 0x19], xmm0
xor byte [rbp - 0x18], 0x33
xor al, 0x3c
xor byte [rbp - 0x17], 0x34
xor byte [rbp - 0x16], 0x35
xor byte [rbp - 0x15], 0x36
xor byte [rbp - 0x14], 0x37
xor byte [rbp - 0x13], 0x38
xor byte [rbp - 0x12], 0x39
mov word [rbp - 0x11], cx
xor cl, 0x3a
xor byte [rbp - 0x10], 0x3b
mov byte [rbp - 0x11], cl
mov rcx, qword [0x180b5ed00]
mov byte [rbp - 0x19], 0x67
mov byte [rbp - 0xf], al
call r8
mov r9, rax
mov qword [0x180b5ecf8], rax
mov rax, qword [0x180b5ef08]
test r9, r9
je 0x1800464ca
cmp r9, rax
je 0x1800464ca
mov rcx, qword [0x180b60468]
lea rdx, [rsp + 0x30]
mov eax, dword [0x18023a738]
vmovups ymm0, ymmword [str.meQ__TTNRoQK_5_1e]
mov r8, qword [rcx + 0x208]
movzx ecx, byte [0x18023a73c]
vmovups ymmword [rsp + 0x30], ymm0
xor byte [rsp + 0x31], 0x33
xor cl, 0x56
xor byte [rsp + 0x32], 0x34
xor byte [rsp + 0x33], 0x35
xor byte [rsp + 0x34], 0x36
xor byte [rsp + 0x35], 0x37
xor byte [rsp + 0x36], 0x38
xor byte [rsp + 0x37], 0x39
xor byte [rsp + 0x38], 0x3a
xor byte [rbp - 0x80], 0x3b
xor byte [rbp - 0x7f], 0x3c
xor byte [rbp - 0x7e], 0x3d
xor byte [rbp - 0x7d], 0x3e
xor byte [rbp - 0x7c], 0x3f
xor byte [rbp - 0x7b], 0x40
xor byte [rbp - 0x7a], 0x41
xor byte [rbp - 0x79], 0x42
xor byte [rbp - 0x78], 0x43
xor byte [rbp - 0x77], 0x44
xor byte [rbp - 0x76], 0x45
xor byte [rbp - 0x75], 0x46
xor byte [rbp - 0x74], 0x47
xor byte [rbp - 0x73], 0x48
xor byte [rbp - 0x72], 0x49
xor byte [rbp - 0x71], 0x4a
xor byte [rbp - 0x70], 0x4b
xor byte [rbp - 0x6f], 0x4c
xor byte [rbp - 0x6e], 0x4d
xor byte [rbp - 0x6d], 0x4e
xor byte [rbp - 0x6c], 0x4f
xor byte [rbp - 0x6b], 0x50
xor byte [rbp - 0x6a], 0x51
mov dword [rbp - 0x69], eax
xor al, 0x52
xor byte [rbp - 0x68], 0x53
xor byte [rbp - 0x67], 0x54
xor byte [rbp - 0x66], 0x55
mov byte [rbp - 0x65], cl
mov rcx, r9
mov byte [rsp + 0x30], 0x5f
mov byte [rbp - 0x69], al
vzeroupper
call r8
test eax, eax
je 0x1800464ca
mov rax, qword [0x180b60468]
lea rdx, [rbp - 9]
movzx ecx, byte [0x18023a73c]
vmovups ymm0, ymmword [str.meQ__TTNRoQK_5_1e]
xor cl, 0x56
mov qword [rsp + 0xe8], r14
mov r8, qword [rax + 0x50]
mov eax, dword [0x18023a738]
vmovups ymmword [rbp - 9], ymm0
xor byte [rbp - 8], 0x33
xor byte [rbp - 7], 0x34
xor byte [rbp - 6], 0x35
xor byte [rbp - 5], 0x36
xor byte [rbp - 4], 0x37
xor byte [rbp - 3], 0x38
xor byte [rbp - 2], 0x39
xor byte [rbp - 1], 0x3a
xor byte [rbp], 0x3b
xor byte [rbp + 1], 0x3c
xor byte [rbp + 2], 0x3d
xor byte [rbp + 3], 0x3e
xor byte [rbp + 4], 0x3f
xor byte [rbp + 5], 0x40
xor byte [rbp + 6], 0x41
xor byte [rbp + 7], 0x42
xor byte [rbp + 8], 0x43
xor byte [rbp + 9], 0x44
xor byte [rbp + 0xa], 0x45
xor byte [rbp + 0xb], 0x46
xor byte [rbp + 0xc], 0x47
xor byte [rbp + 0xd], 0x48
xor byte [rbp + 0xe], 0x49
xor byte [rbp + 0xf], 0x4a
xor byte [rbp + 0x10], 0x4b
xor byte [rbp + 0x11], 0x4c
xor byte [rbp + 0x12], 0x4d
xor byte [rbp + 0x13], 0x4e
xor byte [rbp + 0x14], 0x4f
xor byte [rbp + 0x15], 0x50
xor byte [rbp + 0x16], 0x51
mov dword [rbp + 0x17], eax
xor al, 0x52
xor byte [rbp + 0x18], 0x53
xor byte [rbp + 0x19], 0x54
xor byte [rbp + 0x1a], 0x55
mov byte [rbp + 0x1b], cl
mov rcx, qword [0x180b5ecf8]
mov byte [rbp + 0x17], al
mov byte [rbp - 9], 0x5f
vzeroupper
call r8
mov r14, rax
test rax, rax
je 0x1800464c2
cmp rax, qword [0x180b5ef08]
je 0x1800464c2
vmovups ymm0, ymmword [0x18023a698]
mov rcx, qword [0x180b60468]
lea rdx, [rsp + 0x30]
movzx eax, byte [0x18023a6c0]
xor al, 0x5a
mov r8, qword [rcx + 0x208]
vmovups ymmword [rsp + 0x30], ymm0
vmovsd xmm0, qword [0x18023a6b8]
xor byte [rsp + 0x31], 0x33
xor byte [rsp + 0x32], 0x34
xor byte [rsp + 0x33], 0x35
xor byte [rsp + 0x34], 0x36
xor byte [rsp + 0x35], 0x37
xor byte [rsp + 0x36], 0x38
xor byte [rsp + 0x37], 0x39
xor byte [rsp + 0x38], 0x3a
xor byte [rbp - 0x80], 0x3b
xor byte [rbp - 0x7f], 0x3c
xor byte [rbp - 0x7e], 0x3d
xor byte [rbp - 0x7d], 0x3e
xor byte [rbp - 0x7c], 0x3f
xor byte [rbp - 0x7b], 0x40
xor byte [rbp - 0x7a], 0x41
xor byte [rbp - 0x79], 0x42
xor byte [rbp - 0x78], 0x43
xor byte [rbp - 0x77], 0x44
xor byte [rbp - 0x76], 0x45
xor byte [rbp - 0x75], 0x46
xor byte [rbp - 0x74], 0x47
xor byte [rbp - 0x73], 0x48
xor byte [rbp - 0x72], 0x49
xor byte [rbp - 0x71], 0x4a
xor byte [rbp - 0x70], 0x4b
xor byte [rbp - 0x6f], 0x4c
xor byte [rbp - 0x6e], 0x4d
xor byte [rbp - 0x6d], 0x4e
xor byte [rbp - 0x6c], 0x4f
xor byte [rbp - 0x6b], 0x50
xor byte [rbp - 0x6a], 0x51
mov rcx, qword [0x180b5ecf8]
vmovsd qword [rbp - 0x69], xmm0
xor byte [rbp - 0x69], 0x52
xor byte [rbp - 0x68], 0x53
xor byte [rbp - 0x67], 0x54
xor byte [rbp - 0x66], 0x55
xor byte [rbp - 0x65], 0x56
xor byte [rbp - 0x64], 0x57
xor byte [rbp - 0x63], 0x58
xor byte [rbp - 0x62], 0x59
mov byte [rsp + 0x30], 0x5f
mov byte [rbp - 0x61], al
vzeroupper
call r8
test eax, eax
je 0x1800464c2
vmovups ymm0, ymmword [0x18023a698]
mov rax, qword [0x180b60468]
lea rdx, [rbp - 0x49]
mov rcx, qword [0x180b5ecf8]
mov qword [rsp + 0xf8], r12
mov r8, qword [rax + 0x50]
vmovups ymmword [rbp - 0x49], ymm0
vmovsd xmm0, qword [0x18023a6b8]
movzx eax, byte [0x18023a6c0]
xor byte [rbp - 0x48], 0x33
xor al, 0x5a
xor byte [rbp - 0x47], 0x34
xor byte [rbp - 0x46], 0x35
xor byte [rbp - 0x45], 0x36
xor byte [rbp - 0x44], 0x37
xor byte [rbp - 0x43], 0x38
xor byte [rbp - 0x42], 0x39
xor byte [rbp - 0x41], 0x3a
xor byte [rbp - 0x40], 0x3b
xor byte [rbp - 0x3f], 0x3c
xor byte [rbp - 0x3e], 0x3d
xor byte [rbp - 0x3d], 0x3e
xor byte [rbp - 0x3c], 0x3f
xor byte [rbp - 0x3b], 0x40
xor byte [rbp - 0x3a], 0x41
xor byte [rbp - 0x39], 0x42
xor byte [rbp - 0x38], 0x43
xor byte [rbp - 0x37], 0x44
xor byte [rbp - 0x36], 0x45
xor byte [rbp - 0x35], 0x46
xor byte [rbp - 0x34], 0x47
xor byte [rbp - 0x33], 0x48
xor byte [rbp - 0x32], 0x49
xor byte [rbp - 0x31], 0x4a
xor byte [rbp - 0x30], 0x4b
xor byte [rbp - 0x2f], 0x4c
xor byte [rbp - 0x2e], 0x4d
xor byte [rbp - 0x2d], 0x4e
xor byte [rbp - 0x2c], 0x4f
xor byte [rbp - 0x2b], 0x50
xor byte [rbp - 0x2a], 0x51
vmovsd qword [rbp - 0x29], xmm0
xor byte [rbp - 0x29], 0x52
xor byte [rbp - 0x28], 0x53
xor byte [rbp - 0x27], 0x54
xor byte [rbp - 0x26], 0x55
xor byte [rbp - 0x25], 0x56
xor byte [rbp - 0x24], 0x57
xor byte [rbp - 0x23], 0x58
xor byte [rbp - 0x22], 0x59
mov byte [rbp - 0x21], al
mov byte [rbp - 0x49], 0x5f
vzeroupper
call r8
mov r12, rax
test rax, rax
je 0x1800464ba
cmp rax, qword [0x180b5ef08]
je 0x1800464ba
mov rcx, qword [0x180b60468]
mov qword [rsp + 0x128], rsi
mov qword [rsp + 0xf0], r13
mov rdx, qword [rcx + 0x130]
mov rcx, rax
call rdx
test eax, eax
je 0x18004649d
mov rax, qword [0x180b60468]
mov rcx, qword [rax + 0x260]
test rcx, rcx
je 0x1800464a4
cmp rcx, qword [0x180b5ef08]
je 0x1800464a4
mov r10, qword [rax + 0x48]
mov eax, dword [0x1802383d8]
vmovsd xmm0, qword [rbx + 0x10]
vmovsd xmm1, qword [rbx + 8]
mov dword [rbp + 0x67], eax
movzx eax, word [0x1802383dc]
xor byte [rbp + 0x68], 0x33
xor byte [rbp + 0x69], 0x34
xor byte [rbp + 0x6a], 0x35
mov word [rbp + 0x6b], ax
xor al, 0x36
xor byte [rbp + 0x6c], 0x37
cmp byte [reloc.WS2_32.dll_gethostname], 0
mov byte [rbp + 0x6b], al
mov rax, qword [str.dVWAYE_v9W_UWZR8]
mov qword [rbp + 0x7f], rax
mov byte [rbp + 0x67], Ordinal_41
je 0x180045fdc
xor byte [rbp + 0x80], 0x33
xor byte [rbp + 0x81], 0x34
xor byte [rbp + 0x82], 0x35
xor byte [rbp + 0x83], 0x36
xor byte [rbp + 0x84], 0x37
xor byte [rbp + 0x85], 0x38
xor byte [rbp + 0x86], 0x39
mov byte [rbp + 0x7f], 0x56
vmovsd xmm3, qword [rbx]
vmovsd qword [rsp + 0x28], xmm0
vmovq r9, xmm3
lea r8, [rbp + 0x67]
lea rdx, [rbp + 0x7f]
vmovsd qword [rsp + 0x20], xmm1
call r10
mov rsi, rax
test rax, rax
je 0x18004649d
cmp rax, qword [0x180b5ef08]
je 0x18004649d
movzx eax, word [0x1802383dc]
mov r10, qword [0x180b60468]
mov ecx, dword [0x1802383d8]
vmovsd xmm0, qword [rbx + 0x28]
vmovsd xmm1, qword [rbx + 0x20]
mov r11, qword [r10 + 0x48]
mov word [rbp + 0x7b], ax
xor al, 0x36
xor byte [rbp + 0x7c], 0x37
mov dword [rbp + 0x77], ecx
xor byte [rbp + 0x78], 0x33
xor byte [rbp + 0x79], 0x34
xor byte [rbp + 0x7a], 0x35
cmp byte [reloc.WS2_32.dll_gethostname], 0
mov byte [rbp + 0x7b], al
mov rax, qword [str.dVWAYE_v9W_UWZR8]
mov qword [rbp - 0x59], rax
mov byte [rbp + 0x77], Ordinal_41
je 0x18004608b
xor byte [rbp - 0x58], 0x33
xor byte [rbp - 0x57], 0x34
xor byte [rbp - 0x56], 0x35
xor byte [rbp - 0x55], 0x36
xor byte [rbp - 0x54], 0x37
xor byte [rbp - 0x53], 0x38
xor byte [rbp - 0x52], 0x39
mov byte [rbp - 0x59], 0x56
vmovsd xmm3, qword [rbx + 0x18]
mov rcx, qword [r10 + 0x260]
lea r8, [rbp + 0x77]
vmovsd qword [rsp + 0x28], xmm0
vmovq r9, xmm3
lea rdx, [rbp - 0x59]
vmovsd qword [rsp + 0x20], xmm1
call r11
mov rbx, rax
test rax, rax
je 0x18004649d
cmp rax, qword [0x180b5ef08]
je 0x18004649d
mov rcx, qword [0x180b60468]
mov qword [rsp + 0xe0], r15
mov rdx, qword [rcx + 0x120]
mov ecx, 3
call rdx
mov r9, qword [0x180b60468]
mov r8, rsi
xor edx, edx
mov rcx, rax
mov r13, rax
call qword [r9 + Ordinal_301]
mov r9, qword [0x180b60468]
mov r8, rbx
mov edx, 1
mov rcx, r13
call qword [r9 + Ordinal_301]
mov r9, qword [0x180b60468]
mov r8, r14
mov edx, 2
mov rcx, r13
call qword [r9 + Ordinal_301]
mov rax, qword [0x180b60468]
mov rdx, r13
mov rcx, r12
mov r8, qword [rax + 0xe8]
call r8
mov r15, rax
test rax, rax
je 0x180046483
cmp rax, qword [0x180b5ef08]
je 0x180046483
mov rcx, qword [0x180b60468]
mov rdx, qword [rcx + 0xf0]
mov rcx, rax
call rdx
cmp eax, 7
jne 0x180046476
mov rax, qword [0x180b60468]
xor edx, edx
mov rcx, r15
mov r8, qword [rax + 0xf8]
call r8
mov rcx, qword [0x180b60468]
mov edx, 6
mov rsi, rax
mov r8, qword [rcx + 0xf8]
mov rcx, r15
call r8
mov rcx, qword [0x180b5ef08]
mov r14, rax
test rax, rax
je 0x180046292
cmp rax, rcx
je 0x180046292
mov byte [rdi + 0x40], 1
lea rdx, [rbp + 0x67]
mov rcx, qword [0x180b60468]
mov r8, qword [rcx + 0x208]
mov ecx, dword [str.SAYZD7]
mov dword [rbp + 0x67], ecx
movzx ecx, word [0x18023a668]
xor byte [rbp + 0x68], 0x33
xor byte [rbp + 0x69], 0x34
xor byte [rbp + 0x6a], 0x35
mov word [rbp + 0x6b], cx
xor cl, 0x36
xor byte [rbp + 0x6c], 0x37
mov byte [rbp + 0x6b], cl
mov rcx, rax
mov byte [rbp + 0x67], 0x61
call r8
test eax, eax
jne 0x180046234
vmovsd xmm0, qword [0x1802490f0]
mov rcx, qword [0x180b5ef08]
vcvttsd2si eax, xmm0
mov dword [rdi + 0x44], eax
jmp 0x180046296
mov rax, qword [0x180b60468]
lea rdx, [rbp + 0x77]
mov rcx, r14
mov rbx, qword [rax + 0xe0]
mov r8, qword [rax + 0x50]
mov eax, dword [str.SAYZD7]
mov dword [rbp + 0x77], eax
movzx eax, word [0x18023a668]
xor byte [rbp + 0x78], 0x33
xor byte [rbp + 0x79], 0x34
xor byte [rbp + 0x7a], 0x35
mov word [rbp + 0x7b], ax
xor al, 0x36
xor byte [rbp + 0x7c], 0x37
mov byte [rbp + 0x7b], al
mov byte [rbp + 0x77], 0x61
call r8
mov rcx, rax
call rbx
mov rcx, qword [0x180b5ef08]
vcvttsd2si eax, xmm0
mov dword [rdi + 0x44], eax
jmp 0x180046296
mov byte [rdi + 0x40], 0
test rsi, rsi
je 0x180046476
cmp rsi, rcx
je 0x180046476
cmp byte [0x180238555], 0
mov rax, qword [0x180b60468]
mov r8, qword [rax + 0x208]
movzx eax, word [0x180238554]
mov word [rbp + 0x67], ax
je 0x1800462d2
xor byte [rbp + 0x68], 0x33
mov byte [rbp + 0x67], 0x78
lea rdx, [rbp + 0x67]
mov rcx, rsi
call r8
test eax, eax
je 0x180046476
cmp byte [0x1802383d5], 0
mov rax, qword [0x180b60468]
mov r8, qword [rax + 0x208]
movzx eax, word [0x1802383d4]
mov word [rbp + 0x67], ax
je 0x18004630e
xor byte [rbp + 0x68], 0x33
mov byte [rbp + 0x67], 0x79
lea rdx, [rbp + 0x67]
mov rcx, rsi
call r8
test eax, eax
je 0x180046476
cmp byte [0x180238459], 0
mov rax, qword [0x180b60468]
mov r8, qword [rax + 0x208]
movzx eax, word [0x180238458]
mov word [rbp + 0x67], ax
je 0x18004634a
xor byte [rbp + 0x68], 0x33
mov byte [rbp + 0x67], 0x7a
lea rdx, [rbp + 0x67]
mov rcx, rsi
call r8
test eax, eax
je 0x180046476
cmp byte [0x180238555], 0
mov rax, qword [0x180b60468]
mov r8, qword [rax + 0x50]
movzx eax, word [0x180238554]
mov word [rbp + 0x67], ax
je 0x180046383
xor byte [rbp + 0x68], 0x33
mov byte [rbp + 0x67], 0x78
lea rdx, [rbp + 0x67]
mov rcx, rsi
call r8
cmp byte [0x1802383d5], 0
mov r14, rax
mov rcx, qword [0x180b60468]
mov rax, qword [rcx + 0x50]
movzx ecx, word [0x1802383d4]
mov word [rbp + 0x77], cx
je 0x1800463b7
xor byte [rbp + 0x78], 0x33
mov byte [rbp + 0x77], 0x79
lea rdx, [rbp + 0x77]
mov rcx, rsi
call rax
cmp byte [0x180238459], 0
mov rbx, rax
mov rcx, qword [0x180b60468]
mov rax, qword [rcx + 0x50]
movzx ecx, word [0x180238458]
mov word [rbp + 0x7f], cx
je 0x1800463ed
xor byte [rbp + 0x80], 0x33
mov byte [rbp + 0x7f], 0x7a
lea rdx, [rbp + 0x7f]
mov rcx, rsi
call rax
mov rcx, qword [0x180b60468]
mov rsi, rax
mov rdx, qword [rcx + 0xe0]
mov rcx, r14
call rdx
vmovsd qword [rdi], xmm0
mov rcx, qword [0x180b60468]
mov rdx, qword [rcx + 0xe0]
mov rcx, rbx
call rdx
vmovsd qword [rdi + 8], xmm0
mov rcx, qword [0x180b60468]
mov rdx, qword [rcx + 0xe0]
mov rcx, rsi
call rdx
vmovsd qword [rdi + 0x10], xmm0
test r14, r14
je 0x180046452
mov rax, qword [0x180b60468]
mov rcx, r14
call qword [rax + 0x40]
test rbx, rbx
je 0x180046464
mov rax, qword [0x180b60468]
mov rcx, rbx
call qword [rax + 0x40]
test rsi, rsi
je 0x180046476
mov rax, qword [0x180b60468]
mov rcx, rsi
call qword [rax + 0x40]
mov rax, qword [0x180b60468]
mov rcx, r15
call qword [rax + 0x40]
mov r15, qword [rsp + 0xe0]
test r13, r13
je 0x18004649d
mov rax, qword [0x180b60468]
mov rcx, r13
call qword [rax + 0x40]
mov rax, qword [0x180b60468]
mov rcx, r12
call qword [rax + 0x40]
mov r13, qword [rsp + 0xf0]
mov rsi, qword [rsp + 0x128]
mov r12, qword [rsp + 0xf8]
mov r14, qword [rsp + 0xe8]
mov rax, rdi
add rsp, 0x100
pop rdi
pop rbx
pop rbp
ret