Function at 0x140057c3c
Capabilities:
Access peb ldr_data
Encode data using xor
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x60
xor ebx, ebx
mov edi, 0xb80aeaae
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov r13d, 0x4764996c
movups xmm0, xmmword [rax + 0x58]
movd ecx, xmm0
sub cx, 8
test ebx, ebx
je 0x140057cc8
psrldq xmm0, 8
movq r8, xmm0
movzx ecx, cx
shr rcx, 1
lea r10, [r8 + rcx*2]
mov r9d, 0x542b6708
jmp 0x140057cba
movsx edx, byte [r8]
mov ecx, edx
imul ecx, edx
add ecx, 0x31
xor ecx, r13d
xor edx, r9d
mov r9d, ecx
imul r9d, edx
add r8, 2
cmp r8, r10
jne 0x140057c9d
cmp r9d, ebx
jne 0x140057dc6
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov rcx, qword [rcx + r10 + 0x88]
mov r11d, ecx
add r11, r10
shr rcx, 0x20
cmp r11, r10
je 0x140057dc6
mov esi, dword [r11 + 0x18]
test esi, esi
je 0x140057dc6
mov r12d, dword [r11 + 0x20]
dec esi
lea rdx, [r12 + rsi*4]
mov r9d, dword [rdx + r10]
add r9, r10
mov r14d, 0x542b6708
jmp 0x140057d2b
movsx r8d, dl
mov edx, r8d
imul edx, r8d
add edx, 0x31
xor edx, r13d
xor r8d, r14d
mov r14d, edx
imul r14d, r8d
mov dl, byte [r9]
inc r9
test dl, dl
jne 0x140057d10
cmp r14d, edi
je 0x140057d43
test esi, esi
jne 0x140057cfb
jmp 0x140057dc6
mov edx, dword [r11 + 0x1c]
add rdx, r10
mov eax, dword [r11 + 0x24]
add rax, r10
movzx eax, word [rax + rsi*2]
mov r9d, dword [rdx + rax*4]
add r9, r10
cmp r9, r11
jbe 0x140057dce
lea rax, [rcx + r11]
cmp r9, rax
jae 0x140057dce
mov ebx, 0x542b6708
mov edi, ebx
jmp 0x140057d8d
movsx ecx, al
mov edx, ecx
imul edx, ecx
add edx, 0x31
xor edx, r13d
mov eax, ebx
xor eax, ecx
mov ebx, edx
imul ebx, eax
inc r9
mov al, byte [r9]
cmp al, 0x2e
jne 0x140057d73
jmp 0x140057dab
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, r13d
xor ecx, edi
mov edi, eax
imul edi, ecx
inc r9
mov al, byte [r9]
test al, al
jne 0x140057d96
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x140057c71
and dword [rbp + 0x48], 0
mov dword [rbp + 0x48], 0x5cd27a86
mov eax, 0x65ed75ed
sub eax, dword [0x14031d058]
sub eax, dword [0x14031d050]
xor eax, 0xaca5d3b8
sub eax, dword [0x14031d048]
mov rdx, qword [0x14031d040]
lea ecx, [rdx - 0x4c955a23]
add ecx, eax
xor ecx, 0x625009fa
add ecx, 0x673ff7b7
xor ecx, 0xe6411dec
mov r8d, dword [0x14031d030]
xor r8d, 0x20e88c69
sub r8d, ecx
mov eax, dword [0x14031d038]
xor eax, 0xdf177396
sub r8d, eax
sub r8d, edx
sub r8d, 0x6eee532b
xor r8d, 0xd3c47086
mov dword [rbp + 0x48], r8d
movsxd rcx, r8d
call r9
mov qword [rbp - 0x38], rax
and dword [rbp + 0x48], 0
movabs rdi, 0xc05b98de3beaceed
xor ebx, ebx
movabs rax, 0x781155e95a4ead14
movabs r14, 0x94ec9a56c009f0f6
movabs r10, 0x232a70629a9704e2
mov r15, qword [0x14031d070]
imul r15, rax
not r15
movabs rdx, 0xdcd58f9d6e873e1a
mov r13, qword [0x14031d060]
mov rax, r13
xor rax, rdx
and r15, rax
ror r15, 0x36
shr r15, 8
movabs rax, 0x8fd8b9ace6349d10
mov r11, qword [0x14031d070]
imul r11, rax
movabs r8, 0x3fa46721c4153113
sub r11, r8
movabs rax, 0x40ff15b280000000
xor r11, rax
shr r11, 0x1f
not r11
lea rcx, [r11 + r8]
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
lea rdx, [0x14031d060]
movzx eax, r11b
movzx ecx, byte [rdx + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x3b
mov edx, 0x8000003f
and ecx, edx
jge 0x140057f2f
dec ecx
or ecx, 0xffffffc0
inc ecx
mov rax, r11
ror rax, cl
not rax
movabs rcx, 0x157dcbc1af87eef0
mov r12, rax
imul r12, rcx
lea r9, [r12 + r8]
mov r8, r11
imul r8, r15
sub r8, r9
xor r8, r14
movzx esi, r9b
mov ecx, esi
xor ecx, 4
and ecx, 0xf
and ecx, edx
jge 0x140057f71
dec ecx
or ecx, 0xffffffc0
inc ecx
rol r8, cl
movabs rcx, 0xdef9f8009a7d5430
imul rax, rcx
movabs rcx, 0x6b7c65cc2e864769
sub rax, rcx
xor r8, rax
mov rax, r9
sub rax, qword [0x14031d078]
xor r8, rax
xor r8, r10
mov rax, r8
and eax, 1
je 0x14005828a
sub rax, 1
je 0x140058188
sub rax, 1
movabs rsi, 0xaaaaaaaaaaaaaaab
je 0x1400580bc
cmp rax, 1
jne 0x14005830a
mov r14, r9
imul r14, r11
movabs rax, 0x75f456aa319f1ed1
add rax, r8
xor r14, rax
ror r14, 0xc
shr r14, 0xc
not r14
movabs rcx, 0x835727ebfe30
mov rdx, qword [0x14031d088]
add rdx, rcx
movabs rax, 0x3f26e259a8e5efb9
xor rdx, rax
movzx eax, r8b
movzx ecx, r14b
imul ecx, eax
and cl, 0x3f
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db97f0b12d3
sub rax, r11
mov r11, rdx
xor r11, rax
mov rcx, r11
imul rcx, rdi
mov eax, 0xaed0c039
add rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
lea r13, [0x14031d060]
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rdi, 0x1285527f18855692
sub rdi, r14
shr rdi, cl
movabs rcx, 0x3fac8baa2069e209
add rcx, r12
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r8
imul rax, qword [r13 + rcx*8]
imul rax, r8
sub rax, r15
xor rdi, rax
jmp 0x140058311
movabs rcx, 0xaaaaaa1aaec93d07
mov r11, r8
xor r11, rcx
movabs rcx, 0x1206ed6cc4e14b
imul r11, rcx
movabs rcx, 0xffff7e8a88d90fdb
imul r12, rcx
movabs rcx, 0x831eec6652b91883
add r11, rcx
add r11, r12
movabs rax, 0x277cd7be7c19ea67
mov rcx, r11
xor rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r9, r11
not r9
lea r13, [0x14031d060]
imul r9, qword [r13 + rcx*8]
xor r9, 0xfffffffffb9cebd7
lea ecx, [r8 + 5]
and cl, 0x3f
rol r9, cl
movabs rax, 0x247a41c000000000
imul r9, rax
mov rcx, r9
ror rcx, 0x2c
not rcx
movabs rax, 0x9b2de6b2cfd5a100
imul rcx, rax
mov rax, r11
sub rax, r9
lea rdx, [rcx + rax*4]
mov cl, r15b
and cl, 0x3f
ror rdx, cl
mov rax, rdi
mov rdi, rdx
imul rdi, rax
jmp 0x140058311
movabs rax, 0xb4947aeb6cdfbe41
imul r8, rax
movabs rax, 0xd79435e50d79435f
mul r8
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r8b
sub cl, dl
movabs rdx, 0x6b1365a93ff60f09
shl rdx, cl
mov rax, r10
mov r10, rdx
xor r10, rax
and esi, 0x8000003f
jge 0x1400581d7
dec esi
or esi, 0xffffffc0
inc esi
mov cl, sil
rol r10, cl
movabs rcx, 0x3fa46721c4153113
add rcx, r8
movabs rsi, 0xaaaaaaaaaaaaaaab
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0x18de3beaceed
lea r13, [0x14031d060]
mov rax, qword [r13 + rcx*8]
imul rax, rdx
xor r10, rax
movabs rax, 0xffffc7a7f20d4b2a
or r10, rax
mov rdi, qword [0x14031d070]
imul rdi, r14
sub rdi, r9
mov rax, r15
sub rax, r10
xor rdi, rax
movabs rax, 0xc7a7c6a6a3054b27
xor rdi, rax
mov rax, r8
imul rax, r9
imul rax, rdi
mov rbx, r11
sub rbx, rax
movabs rax, 0x78958946c57073d
add rbx, rax
xor rbx, r15
mov cl, r11b
add cl, cl
and cl, 0x3f
rol rbx, cl
not rbx
jmp 0x140058311
mov rcx, r8
imul rcx, qword [0x14031d080]
and rcx, r13
mov rax, r10
mov r10, rcx
xor r10, rax
ror r10, 0x22
imul r10, r9
mov rbx, r15
not rbx
imul rbx, r11
movabs rax, 0x7cd8a7de7ef41ac6
imul rbx, rax
imul rsi, r13, 0xfffffffff4103af8
mov rdx, qword [0x14031d068]
sub rsi, rdx
mov al, bl
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x1400582ed
dec ecx
or ecx, 0xffffffc0
inc ecx
ror rsi, cl
movabs r15, 0x3fa46721c4153113
add r15, rsi
add r15, r12
movabs rsi, 0xaaaaaaaaaaaaaaab
lea r13, [0x14031d060]
movabs rcx, 0xff055d7b8ebf100b
xor r14, rcx
mov rax, rsi
mul r14
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub r14, rax
xor r10, rbx
imul r10, qword [r13 + r14*8]
not r9
imul r9, r8
imul r9, r15
imul r9, rdi
movabs rcx, 0xf5ed7e87890c5ad7
xor rcx, r11
not rcx
xor rcx, r9
sub rcx, r10
call fcn.140054e5c
mov qword [0x140321f30], rax
and dword [rbp + 0x58], 0
mov dword [rbp + 0x58], 0xd42c0c7f
mov eax, 0x3a90c384
mov r13, qword [0x14031d058]
sub eax, r13d
sub eax, dword [0x14031d050]
xor eax, 0x9831624e
sub eax, dword [0x14031d048]
mov r12, qword [0x14031d040]
add eax, 0x9d003f84
add eax, r12d
xor eax, 0x862ed11
add eax, 0x3a8f6863
xor eax, 0xf08d11c4
lea ecx, [r12 - 0x4742e595]
add ecx, eax
not ecx
mov eax, dword [0x14031d038]
xor eax, 0xc7c68906
sub ecx, eax
mov r15d, dword [0x14031d030]
xor r15d, 0x383976f9
add r15d, 0x75e8430f
add r15d, ecx
xor r15d, 0xa59a0ad6
mov dword [rbp + 0x48], r15d
mov dword [rbp + 0x58], r15d
movdqa xmm0, xmmword [0x1402f6770]
movdqu xmmword [rbp - 0x20], xmm0
mov word [rbp - 0x10], 0x5f68
xor r15d, r15d
xor edx, edx
mov rax, r15
movabs rcx, 0x13cce94adba99340
div rcx
add dl, 0x38
mov r14b, dl
sar r14b, 7
or r14b, dl
mov al, r14b
sar al, 2
mov sil, r14b
shl sil, 6
mov r11b, sil
or r11b, al
movsx rcx, r14b
or sil, al
mov r9b, r14b
sar r9b, 5
mov al, r14b
shl al, 3
or r9b, al
mov r10b, r14b
sar r10b, 3
mov al, r14b
shl al, 5
or r10b, al
mov r8b, r14b
sar r8b, 4
mov al, r14b
shl al, 4
or r8b, al
mov bl, r14b
not bl
mov dil, r14b
ror dil, 7
lea eax, [r10 - 0x50]
add dil, al
mov dl, byte [rbp + r15 - 0x20]
sub dl, r11b
sub dl, 2
mov eax, 4
sub al, sil
xor dl, al
sar rcx, 1
mov al, r14b
shl al, 7
or cl, al
sub dl, cl
sub dl, byte [0x14031d050]
sub dl, r13b
sub dl, 0x3f
add dl, sil
add dl, r14b
lea eax, [r11 + 7]
add al, r14b
xor dl, al
sub dl, r14b
sub dl, byte [0x14031d048]
sub dl, r9b
sub dl, 0x50
add dl, sil
add dl, r12b
sub r11b, r9b
add r11b, r14b
add r11b, r8b
xor dl, r11b
mov al, r14b
sub al, r8b
xor al, r14b
sub dl, al
sub dl, r10b
add dl, 0x30
add dl, r14b
xor dil, dl
mov al, r14b
add al, al
sub dil, al
add sil, sil
add dil, 0x51
add dil, sil
add dil, r12b
not dil
mov al, r14b
sar al, 7
or al, r14b
sub dil, al
mov al, byte [0x14031d038]
xor al, bl
sub dil, al
mov al, r14b
xor al, 0x40
sub dil, al
mov al, r14b
xor al, byte [0x14031d030]
add dil, al
movsx eax, bl
movsx ecx, r14b
imul ecx, eax
xor dil, cl
mov byte [rbp + r15 - 0x20], dil
inc r15
cmp r15, 0x12
jb 0x14005840b
lea rax, [rbp - 0x20]
mov qword [rbp - 0x30], rax
mov qword [rbp - 0x28], 0x12
and dword [rbp + 0x50], 0
mov dword [rbp + 0x50], 0x7e2cb890
mov eax, 0x2a84b3fc
sub eax, dword [0x14031d058]
sub eax, dword [0x14031d050]
xor eax, 0x2b923dd6
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0xd348ecaf
add eax, ecx
xor eax, 0xd9f810ce
add eax, 0x70185309
xor eax, 0xf6a1afcc
lea edx, [rcx + 0xf51cecb]
add edx, eax
not edx
mov eax, dword [0x14031d038]
xor eax, 0x2607ef26
sub edx, eax
mov ecx, dword [0x14031d030]
xor ecx, 0xd9f810d9
add ecx, 0xcd9e5a8e
add ecx, edx
xor ecx, 0x9e7c1736
mov dword [rbp + 0x50], ecx
movsxd rdx, ecx
mov r9d, dword [rbp + 0x48]
lea r8, [rbp - 0x20]
mov r13, qword [rbp - 0x38]
mov rcx, r13
call fcn.14003eebc
nop
and dword [rbp + 0x50], 0
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp - 0x20], xmm0
mov word [rbp - 0x10], ax
and dword [rbp + 0x58], eax
and dword [rbp - 0x40], eax
mov dword [rbp - 0x40], 0x67c51f52
mov eax, 0xbe071df4
sub eax, dword [0x14031d058]
sub eax, dword [0x14031d050]
xor eax, 0xaccd2f44
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0x1fee0525
add eax, ecx
xor eax, 0xa1802dd6
sub eax, 0xf31b1f4
xor eax, 0xf674015f
lea edx, [rcx + 0x77cc6791]
add edx, eax
not edx
mov eax, dword [0x14031d038]
xor eax, 0xd7365a8c
sub edx, eax
mov ecx, dword [0x14031d030]
xor ecx, 0x28c9a573
add ecx, 0xd5275aa5
add ecx, edx
xor ecx, 0xadb2e8e4
mov dword [rbp - 0x40], ecx
call fcn.14027f118
mov rdx, rax
mov rcx, r13
call fcn.14027f2ac
nop
and dword [rbp - 0x40], 0
xor ebx, ebx
mov edi, 0x49fb228a
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
movups xmm0, xmmword [rax + 0x58]
movd ecx, xmm0
sub cx, 8
test ebx, ebx
je 0x140058710
psrldq xmm0, 8
movq r8, xmm0
movzx ecx, cx
shr rcx, 1
lea r10, [r8 + rcx*2]
mov r9d, 0x8cc9479a
jmp 0x140058702
movsx edx, byte [r8]
mov ecx, edx
imul ecx, edx
add ecx, 0x31
xor ecx, 0x4764996c
xor edx, r9d
mov r9d, ecx
imul r9d, edx
add r8, 2
cmp r8, r10
jne 0x1400586e2
cmp r9d, ebx
jne 0x140058814
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov rcx, qword [rcx + r10 + 0x88]
mov r11d, ecx
add r11, r10
shr rcx, 0x20
cmp r11, r10
je 0x140058814
mov esi, dword [r11 + 0x18]
test esi, esi
je 0x140058814
mov r12d, dword [r11 + 0x20]
dec esi
lea rdx, [r12 + rsi*4]
mov r9d, dword [rdx + r10]
add r9, r10
mov r14d, 0x8cc9479a
jmp 0x140058776
movsx r8d, dl
mov edx, r8d
imul edx, r8d
add edx, 0x31
xor edx, 0x4764996c
xor r8d, r14d
mov r14d, edx
imul r14d, r8d
mov dl, byte [r9]
inc r9
test dl, dl
jne 0x140058758
cmp r14d, edi
je 0x14005878e
test esi, esi
jne 0x140058743
jmp 0x140058814
mov edx, dword [r11 + 0x24]
add rdx, r10
movzx r8d, word [rdx + rsi*2]
mov edx, dword [r11 + 0x1c]
add rdx, r10
mov r9d, dword [rdx + r8*4]
add r9, r10
cmp r9, r11
jbe 0x14005881c
lea rax, [rcx + r11]
cmp r9, rax
jae 0x14005881c
mov ebx, 0x8cc9479a
mov edi, ebx
jmp 0x1400587d9
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, 0x4764996c
xor ecx, ebx
mov ebx, eax
imul ebx, ecx
inc r9
mov al, byte [r9]
cmp al, 0x2e
jne 0x1400587bf
jmp 0x1400587f9
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, 0x4764996c
xor ecx, edi
mov edi, eax
imul edi, ecx
inc r9
mov al, byte [r9]
test al, al
jne 0x1400587e2
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x1400586b6
mov rcx, r13
mov rbx, qword [rsp + 0xa0]
add rsp, 0x60
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
jmp r9