Function at 0x432e00
Capabilities:
Encode data using xor
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x98
mov esi, esp
call fcn.0040f090
push eax
mov dword [esi + 0x54], esp
sub esp, 0x10
mov dword [esi + 0x20], esp
sub esp, 0x10
mov ecx, esp
and ecx, 0xfffffff8
mov esp, ecx
push eax
mov ebx, esp
sub esp, 0x10
mov eax, esp
and eax, 0xfffffff8
mov esp, eax
push eax
mov edi, esp
sub esp, 0x10
mov edx, esp
and edx, 0xfffffff8
mov dword [esi + 0x4c], edx
mov esp, edx
push eax
mov dword [esi + 0x5c], esp
sub esp, 0x10
mov edx, esp
and edx, 0xfffffff8
mov dword [esi + 0x68], edx
mov esp, edx
push eax
mov dword [esi + 0x60], esp
sub esp, 0x10
mov edx, esp
and edx, 0xfffffff8
mov dword [esi + 0x24], edx
mov esp, edx
push eax
mov dword [esi + 0x64], esp
sub esp, 8
mov edx, esp
and edx, 0xfffffff8
mov dword [esi + 0x28], edx
mov esp, edx
push eax
mov dword [esi + 0x6c], esp
sub esp, 0x10
mov edx, esp
and edx, 0xfffffff8
mov dword [esi + 0x2c], edx
mov esp, edx
push eax
mov dword [esi + 0x70], esp
push eax
mov dword [esi + 0x50], esp
mov bl, byte [ebx]
mov byte [esi + 0x30], bl
mov byte [ecx], 0x98
mov byte [ecx + 1], 0x99
mov byte [ecx + 2], 0x9a
mov byte [ecx + 3], 0x5b
mov word [ecx + 0xc], 0
mov dword [ecx + 8], 0
mov dword [ecx + 4], 0
mov dword [esi + 4], 0
mov ebx, dword [esi + 4]
cmp ebx, 0xe
jae 0x432f0d
mov dword [esi + 0x58], edi
jmp 0x432ecf
mov edi, dword [esi + 4]
mov edx, dword [esi + 4]
movzx edx, byte [ecx + edx]
mov ebx, edi
add ebx, 0x97c67144
add edi, 0x44
and edi, edx
or ebx, edx
sub ebx, edi
mov dword [esi + 0x74], ebx
mov edx, dword [esi + 0x74]
add dl, 0x24
mov edi, dword [esi + 4]
mov byte [ecx + edi], dl
mov edx, dword [esi + 4]
inc edx
mov dword [esi + 4], edx
mov edx, dword [esi + 4]
cmp edx, 0xe
jb 0x432ecf
mov edi, dword [esi + 0x58]
jmp 0x432f0d
mov cl, byte [edi]
mov byte [esi + 0x34], cl
mov byte [eax], 0x98
mov byte [eax + 1], 0x99
mov byte [eax + 2], 0x9a
mov byte [eax + 3], 0x5b
mov word [eax + 0xc], 0
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov dword [esi + 8], 0
mov ecx, dword [esi + 8]
cmp ecx, 0xe
jae 0x432f81
jmp 0x432f46
mov ecx, dword [esi + 8]
mov edx, dword [esi + 8]
movzx edx, byte [eax + edx]
mov edi, ecx
add edi, 0x97c67144
add ecx, 0x44
and ecx, edx
or edi, edx
sub edi, ecx
mov dword [esi + 0x78], edi
mov ecx, dword [esi + 0x78]
add cl, 0x24
mov edx, dword [esi + 8]
mov byte [eax + edx], cl
mov ecx, dword [esi + 8]
inc ecx
mov dword [esi + 8], ecx
mov ecx, dword [esi + 8]
cmp ecx, 0xe
jb 0x432f46
jmp 0x432f81
mov eax, dword [eax]
xor ecx, ecx
cpuid
mov edi, dword [esi + 0x20]
mov dword [edi], eax
mov dword [edi + 4], ebx
mov dword [edi + 8], ecx
mov dword [edi + 0xc], edx
mov eax, dword [edi + 8]
mov ecx, dword [esi + 0x5c]
mov cl, byte [ecx]
mov byte [esi + 0x38], cl
mov edi, dword [esi + 0x4c]
mov byte [edi], 0x76
mov byte [edi + 1], 0x6c
mov byte [edi + 2], 0x61
mov byte [edi + 3], 0x75
mov dword [edi + 8], 0
mov dword [edi + 4], 0
mov dword [esi + 0xc], 0
mov ecx, dword [esi + 0xc]
cmp ecx, 0xc
mov ebx, dword [esi + 0x68]
jae 0x433016
jmp 0x432fd4
mov ecx, dword [esi + 0xc]
mov edx, dword [esi + 0xc]
movzx edx, byte [edi + edx]
mov edi, ecx
add edi, 0x2ecc8024
and edi, edx
lea ecx, [ecx + edx + 0x2ecc8024]
add edi, edi
sub ecx, edi
mov edi, dword [esi + 0x4c]
mov dword [esi + 0x7c], ecx
mov ecx, dword [esi + 0x7c]
add cl, 4
mov edx, dword [esi + 0xc]
mov byte [edi + edx], cl
mov ecx, dword [esi + 0xc]
inc ecx
mov dword [esi + 0xc], ecx
mov ecx, dword [esi + 0xc]
cmp ecx, 0xc
jb 0x432fd4
jmp 0x433016
cmp eax, dword [edi]
sete al
mov cl, 1
test al, 1
jne 0x43328c
jmp 0x433027
mov eax, dword [esi + 0x20]
mov eax, dword [eax + 8]
mov ecx, dword [esi + 0x60]
mov cl, byte [ecx]
mov byte [esi + 0x3c], cl
mov byte [ebx], 0x1b
mov byte [ebx + 1], 0x18
mov byte [ebx + 2], 0xc
mov byte [ebx + 3], 0x1e
mov dword [ebx + 8], 0
mov dword [ebx + 4], 0
mov dword [esi + 0x10], 0
mov ecx, dword [esi + 0x10]
cmp ecx, 0xc
jae 0x4330b4
jmp 0x433063
mov ecx, dword [esi + 0x10]
mov edx, dword [esi + 0x10]
movzx edx, byte [ebx + edx]
mov edi, ecx
add edi, 0xf676109b
add ecx, 0x9b
and ecx, edx
or edi, edx
sub edi, ecx
mov dword [esi + 0x80], edi
mov ecx, dword [esi + 0x80]
mov edx, ecx
xor edx, 0xc2
and ecx, 0x42
lea ecx, [edx + ecx*2]
inc cl
mov edx, dword [esi + 0x10]
mov byte [ebx + edx], cl
mov ecx, dword [esi + 0x10]
inc ecx
mov dword [esi + 0x10], ecx
mov ecx, dword [esi + 0x10]
cmp ecx, 0xc
jb 0x433063
jmp 0x4330b4
mov cl, 1
cmp eax, dword [ebx]
je 0x43328c
mov eax, dword [esi + 0x20]
mov eax, dword [eax + 8]
mov ecx, dword [esi + 0x64]
mov cl, byte [ecx]
mov byte [esi + 0x40], cl
mov ecx, dword [esi + 0x24]
mov byte [ecx], 0xd0
mov byte [ecx + 1], 0xee
mov byte [ecx + 2], 0xfe
mov byte [ecx + 3], 0xf8
mov word [ecx + 0xc], 0
mov dword [ecx + 8], 0
mov dword [ecx + 4], 0
mov dword [esi + 0x14], 0
mov ecx, dword [esi + 0x14]
cmp ecx, 0xe
jae 0x433147
jmp 0x433103
mov ecx, dword [esi + 0x14]
mov edx, dword [esi + 0x14]
mov ebx, dword [esi + 0x24]
movzx edx, byte [ebx + edx]
mov edi, ecx
add edi, 0xaf11cb35
add ecx, 0x35
and ecx, edx
or edi, edx
sub edi, ecx
mov dword [esi + 0x84], edi
mov ecx, dword [esi + 0x84]
add cl, 0x8d
mov edx, dword [esi + 0x14]
mov byte [ebx + edx], cl
mov ecx, dword [esi + 0x14]
inc ecx
mov dword [esi + 0x14], ecx
mov ecx, dword [esi + 0x14]
cmp ecx, 0xe
jb 0x433103
jmp 0x433147
mov cl, 1
mov edx, dword [esi + 0x24]
cmp eax, dword [edx]
je 0x43328c
call fcn.0040f090
mov eax, dword [esi + 0x20]
mov eax, dword [eax + 8]
mov ecx, dword [esi + 0x6c]
mov cl, byte [ecx]
mov byte [esi + 0x44], cl
mov ecx, dword [esi + 0x28]
mov byte [ecx], 0xc6
mov byte [ecx + 1], 0xdb
mov byte [ecx + 2], 0xad
mov byte [ecx + 3], 0xa3
mov dword [ecx + 4], 0
mov dword [esi + 0x18], 0
mov ecx, dword [esi + 0x18]
cmp ecx, 8
jae 0x4331db
jmp 0x433191
mov ecx, dword [esi + 0x18]
mov edx, dword [esi + 0x18]
mov ebx, dword [esi + 0x28]
movzx edi, byte [ebx + edx]
mov edx, 0x880fee03
sub edx, ecx
add ecx, 0xfc
and ecx, edi
or edx, edi
not edx
add edx, edi
sub edx, ecx
mov dword [esi + 0x88], edx
mov ecx, dword [esi + 0x88]
add cl, 0x1c
mov edx, dword [esi + 0x18]
mov byte [ebx + edx], cl
mov ecx, dword [esi + 0x18]
inc ecx
mov dword [esi + 0x18], ecx
mov ecx, dword [esi + 0x18]
cmp ecx, 8
jb 0x433191
jmp 0x4331db
mov ecx, dword [esi + 0x28]
cmp eax, dword [ecx]
sete al
mov cl, 1
test al, 1
jne 0x43328c
jmp 0x4331ef
mov eax, dword [esi + 0x20]
mov eax, dword [eax + 8]
mov ecx, dword [esi + 0x70]
mov cl, byte [ecx]
mov byte [esi + 0x48], cl
mov ecx, dword [esi + 0x2c]
mov byte [ecx], 0x2d
mov byte [ecx + 1], 0x2c
mov byte [ecx + 2], 0x1a
mov byte [ecx + 3], 6
mov byte [ecx + 0xc], 0
mov dword [ecx + 8], 0
mov dword [ecx + 4], 0
mov dword [esi + 0x1c], 0
mov ecx, dword [esi + 0x1c]
cmp ecx, 0xd
jae 0x433284
jmp 0x433232
mov ecx, dword [esi + 0x1c]
mov edx, dword [esi + 0x1c]
mov ebx, dword [esi + 0x2c]
movzx edi, byte [ebx + edx]
mov edx, ecx
add edx, 0x5f5c61f0
lea ecx, [ecx + edi + 0x5f5c61f0]
and edx, edi
add edx, edx
mov edi, edx
xor edi, ecx
not edx
and ecx, edx
add ecx, ecx
sub ecx, edi
mov dword [esi + 0x8c], ecx
mov ecx, dword [esi + 0x8c]
add cl, 0x70
mov edx, dword [esi + 0x1c]
mov byte [ebx + edx], cl
mov ecx, dword [esi + 0x1c]
inc ecx
mov dword [esi + 0x1c], ecx
mov ecx, dword [esi + 0x1c]
cmp ecx, 0xd
jb 0x433232
jmp 0x433284
mov ecx, dword [esi + 0x2c]
cmp eax, dword [ecx]
sete cl
test cl, 1
jne 0x433293
jmp 0x4332a4
mov eax, dword [esi + 0x54]
mov byte [eax], 1
mov ecx, dword [esi + 0x50]
mov dword [ecx], 1
jmp 0x4332b3
mov eax, dword [esi + 0x54]
mov byte [eax], 0
mov ecx, dword [esi + 0x50]
mov dword [ecx], 1
mov al, byte [eax]
and al, 1
movzx eax, al
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret