Function at 0x512ade
Capabilities:
Get number of processors
Resolve function by parsing pe exports

Disassembly:
add esp, 4
add esi, 0xd24f
pop esi
push ebx
push ecx
add esp, 4
sub ebx, 0x11f6
sub ebx, 0xbdc
pop ebx
cmp dword [ebp - 0x14d4], 0
jne 0x5122e6
mov dword [ebp - 0x2e0], 0
jmp 0x5125a2
mov eax, dword [ebp - 0x14d4]
mov ecx, dword [eax + 0xc]
mov edx, dword [ecx + 0xc]
mov dword [ebp - 0xc20], edx
push ecx
push esi
add esp, 4
xor ecx, 0x16906
pop ecx
push ecx
or ecx, 0x4709
pop ecx
push esi
push edi
add esp, 4
sub esi, 0xb6b2
or esi, 0x24fc
pop esi
push esi
push esi
add esp, 4
sub esi, 0x12177
pop esi
cmp dword [ebp - 0xc20], 0
jne 0x512342
mov dword [ebp - 0x2e0], 0
jmp 0x5125a2
mov eax, dword [ebp - 0xc20]
mov dword [ebp - 0x4d4], eax
push edx
xor edx, 0xd8b7
pop edx
push esi
push esi
add esp, 4
and esi, 0x1685d
add esi, 0x5dd4
jmp 0x51236d
xor esi, 0x7f36
pop esi
push ecx
push eax
add esp, 4
sub ecx, 0xe2fc
pop ecx
lea ecx, [ebp - 0x1628]
mov dword [ebp - 0xc1c], ecx
mov edx, dword [ebp - 0x4d4]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0xc18], eax
xor ecx, ecx
mov word [ebp - 0x1f8], cx
xor edx, edx
mov word [ebp - 0x100], dx
push edi
add edi, 0xc0bd
or edi, 0x122fe
pop edi
push ebx
push eax
add esp, 4
sub ebx, 0xd65
jmp 0x5123cd
call 0x5123db
add byte [ebp + 0x3e], al
cmp al, 0x4f
inc edi
dec ebx
dec ebx
inc edi
add esp, 4
pop ebx
mov eax, dword [ebp - 0xc18]
mov cx, word [eax]
mov word [ebp - 0xf7e], cx
mov edx, dword [ebp - 0xc18]
add edx, 2
mov dword [ebp - 0xc18], edx
mov ax, word [ebp - 0xf7e]
mov word [ebp - 0x1f8], ax
mov ecx, dword [ebp - 0xc1c]
mov dx, word [ecx]
mov word [ebp - 0xf80], dx
mov eax, dword [ebp - 0xc1c]
add eax, 2
mov dword [ebp - 0xc1c], eax
mov cx, word [ebp - 0xf80]
mov word [ebp - 0x100], cx
push edi
push ebx
add esp, 4
jmp 0x512444
call 0x512450
add byte [eax], bh
inc edi
xor eax, 0xc4833736
add al, 0x81
iretd
push ebx
push edi
add esp, 4
add ebx, 0x9c8d
sub ebx, 0x15786
call 0x5125c1
add byte [ebx + 0x42], al
cmp eax, 0x36343337
add esp, 4
call 0x5125d0
add byte [edx], dh
dec ebp
cmp al, 0x42
cmp eax, 0x4c4833d
pop ebx
cmp dword [ebp - 0x2e0], 0
jne 0x512eed
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 eax
call 0x51268a
add byte [edi], dh
dec esp
inc edx
dec ecx
inc ebp
push eax
inc esp
add esp, 4
add eax, 0x16227
or eax, 0x12bd6
and eax, 0xf3f9
pop eax
push eax
push esi
add esp, 4
xor eax, 0xd593
pop eax
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 ecx
jmp 0x512735
pop ecx
push ecx
push ecx
add esp, 4
xor ecx, 0xe8c7
xor ecx, 0x8816
xor ecx, 0x69ce
or ecx, 0x7d17
pop ecx
push ebx
push esi
add esp, 4
jmp 0x51275f
pop ebx
cmp dword [ebp - 0x14dc], 0
jne 0x512778
mov dword [ebp - 0x6ec], 0
jmp 0x512a34
mov ecx, dword [ebp - 0x14dc]
mov edx, dword [ecx + 0xc]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0xc2c], eax
push esi
push eax
add esp, 4
add esi, 0x907
pop esi
push edx
push edx
add esp, 4
xor edx, 0x1660c
pop edx
push esi
push edi
add esp, 4
add esi, 0x17949
jmp 0x5127b3
pop esi
push edi
xor edi, 0xa203
pop edi
cmp dword [ebp - 0xc2c], 0
jne 0x5127d4
mov dword [ebp - 0x6ec], 0
jmp 0x512a34
mov ecx, dword [ebp - 0xc2c]
mov dword [ebp - 0x4d8], ecx
push esi
or esi, 0x4e77
and esi, 0xe5dd
call 0x5127fa
add byte [ebx + eax*2 + 0x47], al
aaa
cmp dword [esi + edi], esi
add esp, 4
pop esi
push ecx
call 0x51280e
add byte [0x36464c49], bh
dec esi
cmp edi, dword [ecx]
add esp, 4
pop ecx
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 eax
push esi
add esp, 4
sub eax, 0x154d5
sub eax, 0xa970
and eax, 0x1417a
and eax, 0x18569
pop eax
push ebx
sub ebx, 0x12576
and ebx, 0x5134
and ebx, 0x9569
pop ebx
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 edi
push ecx
add esp, 4
jmp 0x5128d9
xor edi, 0x1753b
and edi, 0x1635f
pop edi
push ebx
push esi
add esp, 4
jmp 0x5128f0
pop ebx
push edx
push edx
add esp, 4
add edx, 0xde98
pop edx
movzx eax, word [ebp - 0x104]
test eax, eax
jne 0x512920
movzx ecx, word [ebp - 0x1fc]
movzx edx, word [ebp - 0x104]
sub ecx, edx
mov dword [ebp - 0x14e4], ecx
jmp 0x512983
movzx eax, word [ebp - 0x1fc]
movzx ecx, word [ebp - 0x104]
cmp eax, ecx
je 0x51283f
movzx edx, word [ebp - 0x1fc]
xor edx, 0x20
movzx eax, word [ebp - 0x104]
cmp edx, eax
je 0x51283f
movzx ecx, word [ebp - 0x1fc]
movzx edx, word [ebp - 0x104]
cmp ecx, edx
jge 0x51296d
mov dword [ebp - 0x14e0], 0xffffffff
jmp 0x512977
mov dword [ebp - 0x14e0], 1
mov eax, dword [ebp - 0x14e0]
mov dword [ebp - 0x14e4], eax
cmp dword [ebp - 0x14e4], 0
jne 0x5129cc
push edi
push ecx
add esp, 4
and edi, 0xb150
jmp 0x51299d
xor edi, 0x9ce2
pop edi
push eax
push esi
add esp, 4
and eax, 0xa01d
or eax, 0xe82b
pop eax
push ecx
add ecx, 0x1509
pop ecx
mov ecx, dword [ebp - 0x4d8]
mov dword [ebp - 0x6ec], ecx
jmp 0x512a34
push edx
push esi
add esp, 4
and edx, 0xfbc9
sub edx, 0x5515
call 0x5129ea
add byte [edx], bh
inc ecx
cmp eax, 0x3644443f
add esp, 4
pop edx
push edx
xor edx, 0x12dbc
jmp 0x5129fd
pop edx
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 0x512a2a
mov edx, dword [ebp - 0x4d8]
cmp dword [edx + 0x30], 0
jne 0x5127e0
mov dword [ebp - 0x6ec], 0
push ecx
add ecx, 0x957b
xor ecx, 0x6ca5
sub ecx, 0x11eb9
pop ecx
push ecx
push eax
add esp, 4
add ecx, 0x3c0
call 0x512a62
add byte [esi], dh
inc ebx
cmp ecx, dword [eax + 0x48]
xor al, 0x4f
cmp byte [edi], bh
add esp, 4
pop ecx
cmp dword [ebp - 0x6ec], 0
jne 0x512ab0
push edx
and edx, 0x90a4
pop edx
push eax
push esi
add esp, 4
and eax, 0x16f3f
or eax, 0x18556
pop eax
push edx
push eax
add esp, 4
xor edx, 0x231
xor edx, 0x7745
xor edx, 0x142a9
pop edx
mov dword [ebp - 0x738], 0
jmp 0x5135d7
push ebx
push esi
add esp, 4
xor ebx, 0x132f6
xor ebx, 0x10fe
pop ebx
push edi
xor edi, 0x1672c
or edi, 0xb7c4
call 0x512ade
add byte [esi + 0x38], cl
push eax
inc ebx
dec esp
xor al, 0x3c
cmp cl, byte [ebx + eax*4 - 0x3c]
add al, 0x5f
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 0x512b21
mov eax, dword [ebp - 0x6fc]
mov dword [ebp - 0x3c4], eax
jmp 0x512e12
mov ecx, dword [ebp - 0x14e8]
mov edx, dword [ebp - 0x2f8]
add edx, dword [ecx + 0x3c]
mov dword [ebp - 0x14ec], edx
jne 0x512b49
mov eax, dword [ebp - 0x6fc]
mov dword [ebp - 0x3c4], eax
jmp 0x512e12
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 0x512b7b
mov edx, dword [ebp - 0x6fc]
mov dword [ebp - 0x3c4], edx
jmp 0x512e12
mov eax, dword [ebp - 0x2f8]
add eax, dword [ebp - 0x14f0]
mov dword [ebp - 0x6f0], eax
jne 0x512ba0
mov ecx, dword [ebp - 0x6fc]
mov dword [ebp - 0x3c4], ecx
jmp 0x512e12
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 0x512bfa
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 0x512e06
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 0x512c6a
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 0x512d1c
mov ecx, dword [ebp - 0x180]
movsx edx, byte [ebp + ecx - 0x820]
test edx, edx
je 0x512d1c
push eax
push edx
add esp, 4
and eax, 0x11ccf
pop eax
push esi
push esi
add esp, 4
xor esi, 0x10850
pop esi
push eax
or eax, 0x120fe
sub eax, 0xfd46
and eax, 0x17346
and eax, 0x142b8
pop eax
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 0x512d0e
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 0x512d15
jmp 0x512c5b
jmp 0x512d1c
push esi
and esi, 0x168c6
and esi, 0x143ef
sub esi, 0x95c1
pop esi
push edi
push edi
add esp, 4
and edi, 0x14e6d
or edi, 0x1da9
sub edi, 0xf11b
add edi, 0x16fe2
pop edi
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 0x512d7b
mov dword [ebp - 0xc30], 0
jmp 0x512dea
push eax
add eax, 0x10909
call 0x512d8f
add byte [edi], dh
inc esi
dec esp
inc edi
dec edx
inc edi
dec ebx
add esp, 4
pop eax
push ecx
push edi
add esp, 4
or ecx, 0xbe4b
or ecx, 0x150d0
pop ecx
push eax
sub eax, 0x137e8
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 0x512de0
mov dword [ebp - 0xc30], 0xffffffff
jmp 0x512dea
mov dword [ebp - 0xc30], 1
cmp dword [ebp - 0xc30], 0
jne 0x512e01
mov ecx, dword [ebp - 0x18ac]
mov dword [ebp - 0x3c4], ecx
jmp 0x512e12
jmp 0x512beb
mov edx, dword [ebp - 0x6fc]
mov dword [ebp - 0x3c4], edx
cmp dword [ebp - 0x3c4], 0
je 0x512eed
push esi
jmp 0x512e28
or esi, 0xb20f
pop esi
push edx
push edx
add esp, 4
jmp 0x512e3a
and edx, 0x51ed
call 0x512e4d
add byte [eax], bh
cmp byte [ebx], bh
cmp al, 0x46
cmp dword [ebx - 0x74a5fb3c], eax
test dword [esp + edi*8], edi
invalid
push esi
push esi
add esp, 4
call 0x512efe
add byte [edi], dh
dec ecx
aaa
aas
dec esi
aas
add esp, 4
pop esi
push ecx
jmp 0x512f0c
or ecx, 0x16958
add ecx, 0x8b14
add ecx, 0x17bcd
pop ecx
mov eax, dword fs:[0x18]
mov dword [ebp - 0x18b8], eax
mov ecx, dword [ebp - 0x18b8]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0x18bc], edx
mov eax, dword [ebp - 0x18bc]
mov dword [ebp - 0x14f4], eax
push ecx
push ebx
add esp, 4
xor ecx, 0xf551
sub ecx, 0x4b91
pop ecx
push ebx
sub ebx, 0x11417
sub ebx, 0xee47
pop ebx
push edx
push edi
add esp, 4
sub edx, 0x15bb4
or edx, 0x116f6
pop edx
cmp dword [ebp - 0x14f4], 0
jne 0x512f90
mov dword [ebp - 0x2e0], 0
jmp 0x513237
mov ecx, dword [ebp - 0x14f4]
mov edx, dword [ecx + 0xc]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0xc3c], eax
push esi
or esi, 0x1720c
sub esi, 0xb841
add esi, 0xfa0
pop esi
push ecx
push ecx
add esp, 4
jmp 0x512fc0
sub ecx, 0xc3fa
and ecx, 0x73e7
jmp 0x512fd3
pop ecx
cmp dword [ebp - 0xc3c], 0
jne 0x512fec
mov dword [ebp - 0x2e0], 0
jmp 0x513237
mov ecx, dword [ebp - 0xc3c]
mov dword [ebp - 0x4dc], ecx
push ebx
push esi
add esp, 4
and ebx, 0x55b
pop ebx
push esi
push edi
add esp, 4
add esi, 0xd414
pop esi
push esi
or esi, 0x11597
and esi, 0xf28d
and esi, 0x163d8
or esi, 0x9262
pop esi
lea edx, [ebp - 0x1628]
mov dword [ebp - 0xc38], edx
mov eax, dword [ebp - 0x4dc]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0xc34], ecx
xor edx, edx
mov word [ebp - 0x200], dx
xor eax, eax
mov word [ebp - 0x34], ax
push edx
add edx, 0xde21
xor edx, 0xb9a4
pop edx
push eax
push edx
add esp, 4
and eax, 0x1829d
and eax, 0x159f8
add eax, 0x8b56
pop eax
push edi
push edi
add esp, 4
and edi, 0xe253
pop edi
mov ecx, dword [ebp - 0xc34]
mov dx, word [ecx]
mov word [ebp - 0xf86], dx
mov eax, dword [ebp - 0xc34]
add eax, 2
mov dword [ebp - 0xc34], eax
mov cx, word [ebp - 0xf86]
mov word [ebp - 0x200], cx
mov edx, dword [ebp - 0xc38]
mov ax, word [edx]
mov word [ebp - 0xf88], ax
mov ecx, dword [ebp - 0xc38]
add ecx, 2
mov dword [ebp - 0xc38], ecx
mov dx, word [ebp - 0xf88]
mov word [ebp - 0x34], dx
push edi
push eax
add esp, 4
add edi, 0x4e5e
sub edi, 0x127d
or edi, 0x15226
xor edi, 0x113d9
pop edi
push edi
and edi, 0x2e73
or edi, 0x1752d
xor edi, 0x105fa
pop edi
movzx eax, word [ebp - 0x34]
test eax, eax
jne 0x51312c
movzx ecx, word [ebp - 0x200]
movzx edx, word [ebp - 0x34]
sub ecx, edx
mov dword [ebp - 0x14fc], ecx
jmp 0x513186
movzx eax, word [ebp - 0x200]
movzx ecx, word [ebp - 0x34]
cmp eax, ecx
je 0x513054
movzx edx, word [ebp - 0x200]
xor edx, 0x20
movzx eax, word [ebp - 0x34]
cmp edx, eax
je 0x513054
movzx ecx, word [ebp - 0x200]
movzx edx, word [ebp - 0x34]
cmp ecx, edx
jge 0x513170
mov dword [ebp - 0x14f8], 0xffffffff
jmp 0x51317a
mov dword [ebp - 0x14f8], 1
mov eax, dword [ebp - 0x14f8]
mov dword [ebp - 0x14fc], eax
cmp dword [ebp - 0x14fc], 0
jne 0x5131cf
push ebx
push eax
add esp, 4
xor ebx, 0xedae
pop ebx
push edx
push ecx
add esp, 4
jmp 0x5131a7
or edx, 0x1531e
call 0x5131bd
add byte [edi + 0x45], al
xor eax, 0x33364c49
cmp al, 0x4c
dec esi
add esp, 4
pop edx
mov ecx, dword [ebp - 0x4dc]
mov dword [ebp - 0x2e0], ecx
jmp 0x513237
push ebx
push edx
add esp, 4
xor ebx, 0x522d
jmp 0x5131e0
xor ebx, 0x17845
add ebx, 0x15ff7
pop ebx
push edi
xor edi, 0xf849
or edi, 0x3668
and edi, 0x10688
pop edi
mov edx, dword [ebp - 0x4dc]
mov eax, dword [edx]
mov dword [ebp - 0x4dc], eax
mov ecx, dword [ebp - 0x4dc]
cmp ecx, dword [ebp - 0xc3c]
je 0x51322d
mov edx, dword [ebp - 0x4dc]
cmp dword [edx + 0x30], 0
jne 0x512ff8
mov dword [ebp - 0x2e0], 0
push esi
push ecx
add esp, 4
jmp 0x513245
xor esi, 0x119cb
pop esi
push eax
call 0x513259
add byte [ebx], bh
push eax
dec edi
dec ebp
inc esi
add esp, 4
add eax, 0x13d98
or eax, 0x5f8
pop eax
mov eax, dword [ebp - 0x2e0]
mov ecx, dword [eax + 0x18]
mov dword [ebp - 0x2fc], ecx
push edi
and edi, 0x414c
pop edi
push edx
push edx
add esp, 4
and edx, 0xfe61
pop edx
push ecx
sub ecx, 0x84e3
pop ecx
push edx
push edx
add esp, 4
call 0x5132a6
add byte [edi + 0x3d], cl
cmp eax, dword [ebp + 0x34]
cmp byte [edx - 0x7d], al
les eax, [edx + ebx*2]
mov dword [ebp - 0x70c], 0
mov edx, dword [ebp - 0x2fc]
mov dword [ebp - 0x1500], edx
cmp dword [ebp - 0x1500], 0
jne 0x5132da
mov eax, dword [ebp - 0x70c]
mov dword [ebp - 0x4e0], eax
jmp 0x5135cb
mov ecx, dword [ebp - 0x1500]
mov edx, dword [ebp - 0x2fc]
add edx, dword [ecx + 0x3c]
mov dword [ebp - 0x1504], edx
jne 0x513302
mov eax, dword [ebp - 0x70c]
mov dword [ebp - 0x4e0], eax
jmp 0x5135cb
mov ecx, 8
imul edx, ecx, 0
mov eax, dword [ebp - 0x1504]
mov ecx, dword [eax + edx + 0x78]
mov dword [ebp - 0x1508], ecx
cmp dword [ebp - 0x1508], 0
jne 0x513334
mov edx, dword [ebp - 0x70c]
mov dword [ebp - 0x4e0], edx
jmp 0x5135cb
mov eax, dword [ebp - 0x2fc]
add eax, dword [ebp - 0x1508]
mov dword [ebp - 0x700], eax
jne 0x513359
mov ecx, dword [ebp - 0x70c]
mov dword [ebp - 0x4e0], ecx
jmp 0x5135cb
mov edx, dword [ebp - 0x700]
mov eax, dword [ebp - 0x2fc]
add eax, dword [edx + 0x20]
mov dword [ebp - 0x18c0], eax
mov ecx, dword [ebp - 0x700]
mov edx, dword [ebp - 0x2fc]
add edx, dword [ecx + 0x24]
mov dword [ebp - 0x18c4], edx
mov eax, dword [ebp - 0x700]
mov ecx, dword [ebp - 0x2fc]
add ecx, dword [eax + 0x1c]
mov dword [ebp - 0x18c8], ecx
mov dword [ebp - 0x704], 0
jmp 0x5133b3
mov edx, dword [ebp - 0x704]
add edx, 1
mov dword [ebp - 0x704], edx
mov eax, dword [ebp - 0x700]
mov ecx, dword [ebp - 0x704]
cmp ecx, dword [eax + 0x18]
jae 0x5135bf
mov edx, dword [ebp - 0x704]
mov eax, dword [ebp - 0x18c0]
mov ecx, dword [ebp - 0x2fc]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x708], ecx
mov edx, dword [ebp - 0x704]
mov eax, dword [ebp - 0x18c4]
movzx ecx, word [eax + edx*2]
mov edx, dword [ebp - 0x18c8]
mov eax, dword [ebp - 0x2fc]
add eax, dword [edx + ecx*4]
mov dword [ebp - 0x18cc], eax
mov dword [ebp - 0x184], 0
jmp 0x513423
mov ecx, dword [ebp - 0x184]
add ecx, 1
mov dword [ebp - 0x184], ecx
mov edx, dword [ebp - 0x708]
add edx, dword [ebp - 0x184]
movsx eax, byte [edx]
test eax, eax
je 0x5134d5
mov ecx, dword [ebp - 0x184]
movsx edx, byte [ebp + ecx - 0x804]
test edx, edx
je 0x5134d5
push esi
push eax
add esp, 4
and esi, 0x17dfd
pop esi
push edi
push edx
add esp, 4
jmp 0x513469
xor edi, 0xb7d5
pop edi
push ebx
push eax
add esp, 4
add ebx, 0x10f03
sub ebx, 0x17a25
pop ebx
mov eax, dword [ebp - 0x708]
add eax, dword [ebp - 0x184]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x184]
movsx eax, byte [ebp + edx - 0x804]
cmp ecx, eax
je 0x5134c7
mov ecx, dword [ebp - 0x708]
add ecx, dword [ebp - 0x184]
movsx edx, byte [ecx]
xor edx, 0x20
mov eax, dword [ebp - 0x184]
movsx ecx, byte [ebp + eax - 0x804]
cmp edx, ecx
jne 0x5134ce
jmp 0x513414
jmp 0x5134d5
push esi
push eax
add esp, 4
xor esi, 0x3b9
pop esi
push ebx
add ebx, 0xb7f7
xor ebx, 0xee34
xor ebx, 0x14ec9
pop ebx
push edx
push ecx
add esp, 4
and edx, 0x16bfc
sub edx, 0x11aa4
pop edx
mov edx, dword [ebp - 0x708]
add edx, dword [ebp - 0x184]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x184]
movsx edx, byte [ebp + ecx - 0x804]
cmp eax, edx
jne 0x513534
mov dword [ebp - 0xc40], 0
jmp 0x5135a3
push edx
push eax
add esp, 4
sub edx, 0xfbd3
add edx, 0x118bd
and edx, 0x18d0
and edx, 0xdb13
pop edx
push esi
sub esi, 0xfd0b
xor esi, 0x15ad9
xor esi, 0xe2fc
pop esi
mov eax, dword [ebp - 0x708]
add eax, dword [ebp - 0x184]
movsx ecx, byte [eax]
or ecx, 0x20
mov edx, dword [ebp - 0x184]
movsx eax, byte [ebp + edx - 0x804]
or eax, 0x20
cmp ecx, eax
jge 0x513599
mov dword [ebp - 0xc40], 0xffffffff
jmp 0x5135a3
mov dword [ebp - 0xc40], 1
cmp dword [ebp - 0xc40], 0
jne 0x5135ba
mov ecx, dword [ebp - 0x18cc]
mov dword [ebp - 0x4e0], ecx
jmp 0x5135cb
jmp 0x5133a4
mov edx, dword [ebp - 0x70c]
mov dword [ebp - 0x4e0], edx
mov eax, dword [ebp - 0x4e0]
mov dword [ebp - 0x738], eax
push esi
add esi, 0x2679
sub esi, 0x12609
or esi, 0x1126f
and esi, 0x13e80
pop esi
push ebx
push esi
add esp, 4
sub ebx, 0x14f1a
or ebx, 0x9923
add ebx, 0xf1e
pop ebx
mov ecx, dword [ebp - 0x3cc]
add ecx, 0xe
mov dword [ebp - 0x1918], ecx
push ebx
push ebx
add esp, 4
call 0x51362c
add byte [edx + ecx*2 + 0x38], cl
xor dl, byte [eax + 0x39]
cmp al, 0x4f
inc edx
add esp, 4
pop ebx
push edi
sub edi, 0xc317
jmp 0x51363d
xor edi, 0x14189
xor edi, 0x167a7
pop edi
cmp dword [ebp - 0x3cc], 0
je 0x51365c
cmp dword [ebp - 0xa5c], 0
jne 0x5136a2
push ebx
push eax
add esp, 4
jmp 0x513669
jmp 0x51366f
and ebx, 0x268f
pop ebx
push edx
push ecx
add esp, 4
sub edx, 0xb08c
xor edx, 0xccc3
sub edx, 0x12dbc
pop edx
mov edx, dword [ebp - 0x738]
mov dword [ebp - 0x18d0], edx
push 0
call dword [ebp - 0x18d0]
mov dword [ebp - 0x1fb0], 0xa
push edx
and edx, 0x1691c
and edx, 0x15446
pop edx
push esi
call 0x5136c8
add byte [esi], bh
dec edx
dec eax
inc ebp
xor esi, dword [edx]
inc esi
add esp, 4
or esi, 0x142db
pop esi
push eax
push eax
add esp, 4
and eax, 0x3f0c
pop eax
mov eax, dword [ebp - 0x3cc]
mov cl, byte [eax + 0xa]
mov byte [ebp - 0x381], cl
mov edx, dword [ebp - 0xa5c]
sub edx, dword [ebp - 0x3cc]
mov dword [ebp - 0x158c], edx
mov dword [ebp - 0xc70], 0
push ecx
push edx
add esp, 4
add ecx, 0x837f
add ecx, 0x178bc
sub ecx, 0x12eb4
add ecx, 0xd1d1
pop ecx
push edx
and edx, 0x104f7
and edx, 0x1251
sub edx, 0xfd53
pop edx
mov byte [ebp - 0x960], 0x56
mov byte [ebp - 0x95f], 0x69
mov byte [ebp - 0x95e], 0x72
mov byte [ebp - 0x95d], 0x74
mov byte [ebp - 0x95c], 0x75
mov byte [ebp - 0x95b], 0x61
mov byte [ebp - 0x95a], 0x6c
mov byte [ebp - 0x959], 0x50
mov byte [ebp - 0x958], 0x72
mov byte [ebp - 0x957], 0x6f
mov byte [ebp - 0x956], 0x74
mov byte [ebp - 0x955], 0x65
mov byte [ebp - 0x954], 0x63
mov byte [ebp - 0x953], 0x74
mov byte [ebp - 0x952], 0
push eax
sub eax, 0x161aa
pop eax
push edx
push esi
add esp, 4
call 0x5137bf
add byte [ebp + 0x40], cl
dec eax
cmp edi, dword [eax]
xor eax, 0xc4833c34
add al, 0x5a
push edi
jmp 0x5137c9
sub edi, 0x1777f
and edi, 0xdc33
pop edi
mov eax, dword fs:[0x18]
mov dword [ebp - 0x1c34], eax
mov ecx, dword [ebp - 0x1c34]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0x18d4], edx
mov eax, dword [ebp - 0x18d4]
mov dword [ebp - 0x150c], eax
push ecx
push ecx
add esp, 4
jmp 0x51380a
and ecx, 0x648e
call 0x51381d
add byte [edx], bh
aaa
xor cl, byte ss:[ebp + 0x43]
inc edx
add esp, 4
pop ecx
push eax
sub eax, 0x6110
add eax, 0x834c
pop eax
cmp dword [ebp - 0x150c], 0
jne 0x513847
mov dword [ebp - 0x2a8], 0
jmp 0x513aee
mov ecx, dword [ebp - 0x150c]
mov edx, dword [ecx + 0xc]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0xc4c], eax
push ecx
add ecx, 0x434e
add ecx, 0xa413
add ecx, 0x4475
or ecx, 0x1814c
pop ecx
push edi
push ebx
add esp, 4
or edi, 0x10ab5
jmp 0x513884
add edi, 0x150ff
pop edi
cmp dword [ebp - 0xc4c], 0
jne 0x5138a3
mov dword [ebp - 0x2a8], 0
jmp 0x513aee
mov ecx, dword [ebp - 0xc4c]
mov dword [ebp - 0x4e4], ecx
push ebx
jmp 0x5138b5
jmp 0x5138ba
pop ebx
push edi
sub edi, 0x4062
sub edi, 0x6714
xor edi, 0x9066
pop edi
push ebx
jmp 0x5138d5
jmp 0x5138da
add ebx, 0x91b9
pop ebx
lea edx, [ebp - 0x1628]
mov dword [ebp - 0xc48], edx
mov eax, dword [ebp - 0x4e4]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0xc44], ecx
xor edx, edx
mov word [ebp - 0x204], dx
xor eax, eax
mov word [ebp - 0x38], ax
push eax
push esi
add esp, 4
or eax, 0x1f80
pop eax
push ecx
push eax
add esp, 4
xor ecx, 0x1316d
pop ecx
push edx
push edx
add esp, 4
jmp 0x513930
sub edx, 0x14a2c
or edx, 0x1503a
pop edx
mov ecx, dword [ebp - 0xc44]
mov dx, word [ecx]
mov word [ebp - 0xf8a], dx
mov eax, dword [ebp - 0xc44]
add eax, 2
mov dword [ebp - 0xc44], eax
mov cx, word [ebp - 0xf8a]
mov word [ebp - 0x204], cx
mov edx, dword [ebp - 0xc48]
mov ax, word [edx]
mov word [ebp - 0xf8c], ax
mov ecx, dword [ebp - 0xc48]
add ecx, 2
mov dword [ebp - 0xc48], ecx
mov dx, word [ebp - 0xf8c]
mov word [ebp - 0x38], dx
push ebx
push eax
add esp, 4
or ebx, 0x3533
and ebx, 0x9f97
and ebx, 0x5870
add ebx, 0x7f0e
pop ebx
push edx
xor edx, 0x10445
sub edx, 0x11ec5
add edx, 0x8707
pop edx
movzx eax, word [ebp - 0x38]
test eax, eax
jne 0x5139e3
movzx ecx, word [ebp - 0x204]
movzx edx, word [ebp - 0x38]
sub ecx, edx
mov dword [ebp - 0x1514], ecx
jmp 0x513a3d
movzx eax, word [ebp - 0x204]
movzx ecx, word [ebp - 0x38]
cmp eax, ecx
je 0x51390b
movzx edx, word [ebp - 0x204]
xor edx, 0x20
movzx eax, word [ebp - 0x38]
cmp edx, eax
je 0x51390b
movzx ecx, word [ebp - 0x204]
movzx edx, word [ebp - 0x38]
cmp ecx, edx
jge 0x513a27
mov dword [ebp - 0x1510], 0xffffffff
jmp 0x513a31
mov dword [ebp - 0x1510], 1
mov eax, dword [ebp - 0x1510]
mov dword [ebp - 0x1514], eax
cmp dword [ebp - 0x1514], 0
jne 0x513a86
push edi
push edx
add esp, 4
call 0x513a5a
add byte [ecx + 0x38], cl
xor bh, byte [esi]
aas
dec esi
inc esi
dec esi
dec ebp
add esp, 4
pop edi
push esi
push ebx
add esp, 4
sub esi, 0x16a57
pop esi
push esi
or esi, 0xb430
or esi, 0x16a2d
pop esi
mov ecx, dword [ebp - 0x4e4]
mov dword [ebp - 0x2a8], ecx
jmp 0x513aee
push esi
push ebx
add esp, 4
and esi, 0x1711b
add esi, 0xf7e4
pop esi
push ebx
add ebx, 0x110
add ebx, 0x39aa
pop ebx
push ecx
push ecx
add esp, 4
or ecx, 0xd785
add ecx, 0x12175
pop ecx
mov edx, dword [ebp - 0x4e4]
mov eax, dword [edx]
mov dword [ebp - 0x4e4], eax
mov ecx, dword [ebp - 0x4e4]
cmp ecx, dword [ebp - 0xc4c]
je 0x513ae4
mov edx, dword [ebp - 0x4e4]
cmp dword [edx + 0x30], 0
jne 0x5138af
mov dword [ebp - 0x2a8], 0
push ecx
push edx
add esp, 4
add ecx, 0x403b
or ecx, 0x15c3b
pop ecx
push edi
call 0x513b0e
add byte [edx + 0x45], al
dec edi
dec eax
inc edx
cmp eax, 0x4c48343
pop edi
push eax
xor eax, 0x5f20
xor eax, 0xab07
pop eax
cmp dword [ebp - 0x2a8], 0
jne 0x514425
mov eax, 0x6b
mov word [ebp - 0x16e8], ax
mov ecx, 0x65
mov word [ebp - 0x16e6], cx
mov edx, 0x72
mov word [ebp - 0x16e4], dx
mov eax, 0x6e
mov word [ebp - 0x16e2], ax
mov ecx, 0x65
mov word [ebp - 0x16e0], cx
mov edx, 0x6c
mov word [ebp - 0x16de], dx
mov eax, 0x33
mov word [ebp - 0x16dc], ax
mov ecx, 0x32
mov word [ebp - 0x16da], cx
mov edx, 0x2e
mov word [ebp - 0x16d8], dx
mov eax, 0x64
mov word [ebp - 0x16d6], ax
mov ecx, 0x6c
mov word [ebp - 0x16d4], cx
mov edx, 0x6c
mov word [ebp - 0x16d2], dx
xor eax, eax
mov word [ebp - 0x16d0], ax
push ecx
or ecx, 0xcfc9
jmp 0x513bd2
and ecx, 0xbda0
pop ecx
push ecx
jmp 0x513be1
pop ecx
push edi
push edx
add esp, 4
jmp 0x513bec
pop edi
push esi
push edx
add esp, 4
jmp 0x513bf7
pop esi
mov byte [ebp - 0x830], 0x4c
mov byte [ebp - 0x82f], 0x6f
mov byte [ebp - 0x82e], 0x61
mov byte [ebp - 0x82d], 0x64
mov byte [ebp - 0x82c], 0x4c
mov byte [ebp - 0x82b], 0x69
mov byte [ebp - 0x82a], 0x62
mov byte [ebp - 0x829], 0x72
mov byte [ebp - 0x828], 0x61
mov byte [ebp - 0x827], 0x72
mov byte [ebp - 0x826], 0x79
mov byte [ebp - 0x825], 0x57
mov byte [ebp - 0x824], 0
mov ecx, dword fs:[0x18]
mov dword [ebp - 0x18d8], ecx
mov edx, dword [ebp - 0x18d8]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0x18dc], eax
mov ecx, dword [ebp - 0x18dc]
mov dword [ebp - 0x1518], ecx
push edi
push esi
add esp, 4
and edi, 0x7eeb
pop edi
push edx
push edx
add esp, 4
add edx, 0x13987
pop edx
push ebx
call 0x513ca0
add byte [ebp + 0x36], cl
inc esi
cmp al, 0x40
add esp, 4
jmp 0x513cac
pop ebx
cmp dword [ebp - 0x1518], 0
jne 0x513cc5
mov dword [ebp - 0x710], 0
jmp 0x513f6c
mov edx, dword [ebp - 0x1518]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0xc58], ecx
push eax
or eax, 0xf146
add eax, 0x11778
or eax, 0x279f
pop eax
push ecx
push esi
add esp, 4
call 0x513d00
add byte [ebp + 0x4d], cl
aas
dec ebp
dec ebx
inc ebp
inc edi
cmp eax, 0xc483434b
add al, 0xeb
add ecx, dword [esi + 0x3f]
inc ebp
pop ecx
cmp dword [ebp - 0xc58], 0
jne 0x513d21
mov dword [ebp - 0x710], 0
jmp 0x513f6c
mov edx, dword [ebp - 0xc58]
mov dword [ebp - 0x4e8], edx
push eax
sub eax, 0x6e01
pop eax
push eax
push ebx
add esp, 4
xor eax, 0x3bc5
jmp 0x513f85
pop eax
push edi
push edx
add esp, 4
xor edi, 0x13b64
and edi, 0x1062e
xor edi, 0x3ab
pop edi
cmp dword [ebp - 0x710], 0
jne 0x513fe8
push esi
push ebx
add esp, 4
sub esi, 0xc188
jmp fcn.00513fb8