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

Disassembly:
add esp, 4
pop ebx
cmp dword [ebp - 0x2a8], 0
jne 0x46b8fa
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
push ebx
add esp, 4
xor ecx, 0x15c53
or ecx, 0xedae
sub ecx, 0xc63a
pop ecx
push eax
or eax, 0x12c1a
jmp 0x46b0c0
xor eax, 0xf1a9
sub eax, 0x8c03
pop eax
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 ecx
and ecx, 0xe3d1
or ecx, 0x109eb
pop ecx
push eax
push edx
add esp, 4
jmp 0x46b169
call 0x46b178
add byte [ebp + 0x49], al
inc ecx
dec edi
xor edi, dword [edx]
cmp eax, 0xc4834d46
add al, 0x81
rol bl, 1
add byte [eax], al
pop eax
cmp dword [ebp - 0x1518], 0
jne 0x46b19a
mov dword [ebp - 0x710], 0
jmp 0x46b441
mov edx, dword [ebp - 0x1518]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0xc58], ecx
push edi
xor edi, 0x11c4f
pop edi
push ecx
call 0x46b1c1
add byte [0x404d403f], bh
inc eax
add esp, 4
jmp 0x46b1cd
call 0x46b1da
add byte [ecx + 0x41], cl
inc edi
xor al, 0x4b
inc esp
inc eax
add esp, 4
pop ecx
cmp dword [ebp - 0xc58], 0
jne 0x46b1f6
mov dword [ebp - 0x710], 0
jmp 0x46b441
mov edx, dword [ebp - 0xc58]
mov dword [ebp - 0x4e8], edx
push edi
xor edi, 0x6c04
or edi, 0xbed6
xor edi, 0x10088
and edi, 0x17f6
pop edi
push ebx
push edi
add esp, 4
xor ebx, 0xbcbc
and ebx, 0x17f0e
jmp 0x46b233
pop ebx
lea eax, [ebp - 0x16e8]
mov dword [ebp - 0xc54], eax
mov ecx, dword [ebp - 0x4e8]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0xc50], edx
xor eax, eax
mov word [ebp - 0x208], ax
xor ecx, ecx
mov word [ebp - 0x3c], cx
push edx
push edi
add esp, 4
or edx, 0x4309
pop edx
push ecx
jmp 0x46b272
sub ecx, 0x7f1b
call 0x46b286
add byte [edi + 0x40483532], dh
inc ebx
xor al, 0x83
les eax, [ecx + eax*4]
loope 0x46b2ff
sbb byte [eax], al
add byte [ecx - 0x75], bl
invalid
xchg ebp, eax
mov al, 0xf3
invalid
dec ebx
add edi, 0x4b06
jmp 0x46b30b
pop edi
push edx
xor edx, 0x14763
inc edi
add dword [eax], eax
jmp 0x46b318
pop edx
movzx ecx, word [ebp - 0x3c]
test ecx, ecx
jne 0x46b336
movzx edx, word [ebp - 0x208]
movzx eax, word [ebp - 0x3c]
sub edx, eax
mov dword [ebp - 0x1560], edx
jmp 0x46b390
movzx ecx, word [ebp - 0x208]
movzx edx, word [ebp - 0x3c]
cmp ecx, edx
je 0x46b25e
movzx eax, word [ebp - 0x208]
xor eax, 0x20
movzx ecx, word [ebp - 0x3c]
cmp eax, ecx
je 0x46b25e
movzx edx, word [ebp - 0x208]
movzx eax, word [ebp - 0x3c]
cmp edx, eax
jge 0x46b37a
mov dword [ebp - 0x151c], 0xffffffff
jmp 0x46b384
mov dword [ebp - 0x151c], 1
mov ecx, dword [ebp - 0x151c]
mov dword [ebp - 0x1560], ecx
cmp dword [ebp - 0x1560], 0
jne 0x46b3d9
push ecx
jmp 0x46b3a3
call 0x46b3b3
add byte [edx], dh
inc edx
cmp eax, dword [ebp + 0x38]
xor al, 0x41
inc edx
dec edi
xor eax, dword [ebx + 0x535904c4]
and ebx, 0x6285
or ebx, 0x2249
and ebx, 0x9e05
pop ebx
mov edx, dword [ebp - 0x4e8]
mov dword [ebp - 0x710], edx
jmp 0x46b441
push eax
push edx
add esp, 4
or eax, 0x1754f
add eax, 0xfdb3
sub eax, 0x95f4
pop eax
push esi
xor esi, 0xd6fe
and esi, 0x11ec1
add esi, 0x159ae
add esi, 0x14bf2
pop esi
mov eax, dword [ebp - 0x4e8]
mov ecx, dword [eax]
mov dword [ebp - 0x4e8], ecx
mov edx, dword [ebp - 0x4e8]
cmp edx, dword [ebp - 0xc58]
je 0x46b437
mov eax, dword [ebp - 0x4e8]
cmp dword [eax + 0x30], 0
jne 0x46b202
mov dword [ebp - 0x710], 0
push esi
push esi
add esp, 4
or esi, 0x2dff
sub esi, 0x8ccb
pop esi
push esi
and esi, 0x13572
add esi, 0xa805
pop esi
push eax
push edx
add esp, 4
or eax, 0x2fb5
jmp 0x46b472
pop eax
cmp dword [ebp - 0x710], 0
jne 0x46b4bd
push esi
push edx
add esp, 4
or esi, 0xcbe8
sub esi, 0xe5aa
pop esi
push ebx
push ecx
add esp, 4
xor ebx, 0xb640
pop ebx
push eax
xor eax, 0x165d0
and eax, 0xf448
and eax, 0xac36
pop eax
mov dword [ebp - 0xa58], 0
jmp 0x46bfe5
push ecx
sub ecx, 0xef9a
pop ecx
push eax
push esi
add esp, 4
call 0x46b4d6
add byte [esi + 0x46], al
dec edx
inc edx
xor al, 0x4c
add esp, 4
jmp 0x46b4e0
pop eax
push eax
sub eax, 0x332f
xor eax, 0x17375
pop eax
mov ecx, dword [ebp - 0x710]
mov edx, dword [ecx + 0x18]
mov dword [ebp - 0x300], edx
mov dword [ebp - 0x720], 0
mov eax, dword [ebp - 0x300]
mov dword [ebp - 0x1564], eax
cmp dword [ebp - 0x1564], 0
jne 0x46b52e
mov ecx, dword [ebp - 0x720]
mov dword [ebp - 0x3c8], ecx
jmp 0x46b81f
mov edx, dword [ebp - 0x1564]
mov eax, dword [ebp - 0x300]
add eax, dword [edx + 0x3c]
mov dword [ebp - 0x1568], eax
jne 0x46b556
mov ecx, dword [ebp - 0x720]
mov dword [ebp - 0x3c8], ecx
jmp 0x46b81f
mov edx, 8
imul eax, edx, 0
mov ecx, dword [ebp - 0x1568]
mov edx, dword [ecx + eax + 0x78]
mov dword [ebp - 0x1570], edx
cmp dword [ebp - 0x1570], 0
jne 0x46b588
mov eax, dword [ebp - 0x720]
mov dword [ebp - 0x3c8], eax
jmp 0x46b81f
mov ecx, dword [ebp - 0x300]
add ecx, dword [ebp - 0x1570]
mov dword [ebp - 0x714], ecx
jne 0x46b5ad
mov edx, dword [ebp - 0x720]
mov dword [ebp - 0x3c8], edx
jmp 0x46b81f
mov eax, dword [ebp - 0x714]
mov ecx, dword [ebp - 0x300]
add ecx, dword [eax + 0x20]
mov dword [ebp - 0x18e0], ecx
mov edx, dword [ebp - 0x714]
mov eax, dword [ebp - 0x300]
add eax, dword [edx + 0x24]
mov dword [ebp - 0x18e4], eax
mov ecx, dword [ebp - 0x714]
mov edx, dword [ebp - 0x300]
add edx, dword [ecx + 0x1c]
mov dword [ebp - 0x18e8], edx
mov dword [ebp - 0x718], 0
jmp 0x46b607
mov eax, dword [ebp - 0x718]
add eax, 1
mov dword [ebp - 0x718], eax
mov ecx, dword [ebp - 0x714]
mov edx, dword [ebp - 0x718]
cmp edx, dword [ecx + 0x18]
jae 0x46b813
mov eax, dword [ebp - 0x718]
mov ecx, dword [ebp - 0x18e0]
mov edx, dword [ebp - 0x300]
add edx, dword [ecx + eax*4]
mov dword [ebp - 0x71c], edx
mov eax, dword [ebp - 0x718]
mov ecx, dword [ebp - 0x18e4]
movzx edx, word [ecx + eax*2]
mov eax, dword [ebp - 0x18e8]
mov ecx, dword [ebp - 0x300]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x18ec], ecx
mov dword [ebp - 0x188], 0
jmp 0x46b677
mov edx, dword [ebp - 0x188]
add edx, 1
mov dword [ebp - 0x188], edx
mov eax, dword [ebp - 0x71c]
add eax, dword [ebp - 0x188]
movsx ecx, byte [eax]
test ecx, ecx
je 0x46b729
mov edx, dword [ebp - 0x188]
movsx eax, byte [ebp + edx - 0x830]
test eax, eax
je 0x46b729
push esi
push esi
add esp, 4
sub esi, 0xb449
or esi, 0x422e
xor esi, 0xfc08
add esi, 0xedd
pop esi
push eax
sub eax, 0x1018a
xor eax, 0x109e4
and eax, 0xf964
pop eax
mov ecx, dword [ebp - 0x71c]
add ecx, dword [ebp - 0x188]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x188]
movsx ecx, byte [ebp + eax - 0x830]
cmp edx, ecx
je 0x46b71b
mov edx, dword [ebp - 0x71c]
add edx, dword [ebp - 0x188]
movsx eax, byte [edx]
xor eax, 0x20
mov ecx, dword [ebp - 0x188]
movsx edx, byte [ebp + ecx - 0x830]
cmp eax, edx
jne 0x46b722
jmp 0x46b668
jmp 0x46b729
push edx
add edx, 0xfe4c
or edx, 0xe043
and edx, 0xa568
sub edx, 0x17733
pop edx
push ebx
push ecx
add esp, 4
sub ebx, 0xef7c
sub ebx, 0x1862f
or ebx, 0x14c59
pop ebx
mov eax, dword [ebp - 0x71c]
add eax, dword [ebp - 0x188]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x188]
movsx eax, byte [ebp + edx - 0x830]
cmp ecx, eax
jne 0x46b788
mov dword [ebp - 0xc5c], 0
jmp 0x46b7f7
push edi
call 0x46b797
add byte [edx], dh
inc ebp
push eax
dec edx
xor eax, 0x833b4b40
les eax, [ecx + eax*4]
out 0x5d, eax
das
add byte [eax], al
pop edi
push ebx
jmp 0x46b7a7
xor ebx, 0x1854b
sub ebx, 0x1436c
add ebx, 0x9af6
pop ebx
mov ecx, dword [ebp - 0x71c]
add ecx, dword [ebp - 0x188]
movsx edx, byte [ecx]
or edx, 0x20
mov eax, dword [ebp - 0x188]
movsx ecx, byte [ebp + eax - 0x830]
or ecx, 0x20
cmp edx, ecx
jge 0x46b7ed
mov dword [ebp - 0xc5c], 0xffffffff
jmp 0x46b7f7
mov dword [ebp - 0xc5c], 1
cmp dword [ebp - 0xc5c], 0
jne 0x46b80e
mov edx, dword [ebp - 0x18ec]
mov dword [ebp - 0x3c8], edx
jmp 0x46b81f
jmp 0x46b5f8
mov eax, dword [ebp - 0x720]
mov dword [ebp - 0x3c8], eax
cmp dword [ebp - 0x3c8], 0
je 0x46b8fa
push edi
jmp 0x46b836
xor edi, 0x4a20
jmp 0x46b845
pop edi
push eax
push edi
add esp, 4
xor eax, 0x180b6
and eax, 0x4425
or eax, 0x102bb
pop eax
mov ecx, dword [ebp - 0x3c8]
mov dword [ebp - 0x18f0], ecx
push eax
sub eax, 0x1367f
call 0x46b880
add byte [eax], bh
inc eax
cmp dword [edx + 0x33], eax
inc ebx
aaa
inc edi
cmp dword [ebx - 0x177efb3c], eax
ret
push eax
push ecx
add esp, 4
jmp 0x46b907
sub eax, 0x17489
or eax, 0x27d0
or eax, 0x11ad8
pop eax
push eax
push edx
add esp, 4
sub eax, 0x2ddf
xor eax, 0xaab6
pop eax
mov ecx, dword fs:[0x18]
mov dword [ebp - 0x18f8], ecx
mov edx, dword [ebp - 0x18f8]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0x18fc], eax
mov ecx, dword [ebp - 0x18fc]
mov dword [ebp - 0x1574], ecx
push ebx
add ebx, 0x2bdd
pop ebx
push eax
xor eax, 0x137e
or eax, 0xba3d
add eax, 0x13b37
sub eax, 0x91c8
pop eax
push edx
jmp 0x46b97f
or edx, 0x1d4d
pop edx
cmp dword [ebp - 0x1574], 0
jne 0x46b99e
mov dword [ebp - 0x2a8], 0
jmp 0x46bc45
mov edx, dword [ebp - 0x1574]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0xc68], ecx
push edi
add edi, 0x10964
and edi, 0x17c9e
add edi, 0x2a78
and edi, 0x1550f
pop edi
push eax
push edi
add esp, 4
add eax, 0x5377
or eax, 0x15e36
xor eax, 0xd444
pop eax
cmp dword [ebp - 0xc68], 0
jne 0x46b9fa
mov dword [ebp - 0x2a8], 0
jmp 0x46bc45
mov edx, dword [ebp - 0xc68]
mov dword [ebp - 0x4ec], edx
push esi
xor esi, 0x18be
or esi, 0x10990
and esi, 0xbe8e
jmp 0x46ba1f
pop esi
push ecx
push ebx
add esp, 4
add ecx, 0x1192a
sub ecx, 0x11933
add ecx, 0xab13
pop ecx
lea eax, [ebp - 0x1628]
mov dword [ebp - 0xc64], eax
mov ecx, dword [ebp - 0x4ec]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0xc60], edx
xor eax, eax
mov word [ebp - 0x20c], ax
xor ecx, ecx
mov word [ebp - 0x40], cx
push eax
or eax, 0x1e59
add eax, 0xd82c
add eax, 0xf793
pop eax
push edi
push eax
add esp, 4
or edi, 0x52e9
call 0x46ba90
add byte [ebp + 0x43], al
push eax
xor eax, 0x3e483948
cmp eax, dword [ebx - 0x74a0fb3c]
xchg ebp, eax
mov al, byte [0x66fffff3]
mov eax, dword [edx]
mov word [ebp - 0xf92], ax
mov ecx, dword [ebp - 0xc60]
add ecx, 2
mov dword [ebp - 0xc60], ecx
mov dx, word [ebp - 0xf92]
mov word [ebp - 0x20c], dx
mov eax, dword [ebp - 0xc64]
mov cx, word [eax]
mov word [ebp - 0xf94], cx
mov edx, dword [ebp - 0xc64]
add edx, 2
mov dword [ebp - 0xc64], edx
mov ax, word [ebp - 0xf94]
mov word [ebp - 0x40], ax
push edx
push ebx
add esp, 4
add edx, 0x10d47
jmp 0x46bafc
pop edx
push ebx
push edi
add esp, 4
and ebx, 0x33d5
pop ebx
push eax
xor eax, 0x1029b
add eax, 0x11f5c
xor eax, 0x1118a
pop eax
movzx ecx, word [ebp - 0x40]
test ecx, ecx
jne 0x46bb3a
movzx edx, word [ebp - 0x20c]
movzx eax, word [ebp - 0x40]
sub edx, eax
mov dword [ebp - 0x157c], edx
jmp 0x46bb94
movzx ecx, word [ebp - 0x20c]
movzx edx, word [ebp - 0x40]
cmp ecx, edx
je 0x46ba62
movzx eax, word [ebp - 0x20c]
xor eax, 0x20
movzx ecx, word [ebp - 0x40]
cmp eax, ecx
je 0x46ba62
movzx edx, word [ebp - 0x20c]
movzx eax, word [ebp - 0x40]
cmp edx, eax
jge 0x46bb7e
mov dword [ebp - 0x1578], 0xffffffff
jmp 0x46bb88
mov dword [ebp - 0x1578], 1
mov ecx, dword [ebp - 0x1578]
mov dword [ebp - 0x157c], ecx
cmp dword [ebp - 0x157c], 0
jne 0x46bbdd
push edx
push edx
add esp, 4
xor edx, 0xc60f
xor edx, 0x16167
pop edx
push ebx
push edx
add esp, 4
sub ebx, 0xc55b
sub ebx, 0xb0ee
add ebx, 0x96b
pop ebx
push edx
xor edx, 0xd46b
pop edx
mov edx, dword [ebp - 0x4ec]
mov dword [ebp - 0x2a8], edx
jmp 0x46bc45
push esi
add esi, 0xf6fa
or esi, 0x32cd
add esi, 0x6ba
pop esi
push edx
push edi
add esp, 4
or edx, 0x16f42
sub edx, 0x2a6b
or edx, 0xbb3d
add edx, 0x2ff2
pop edx
mov eax, dword [ebp - 0x4ec]
mov ecx, dword [eax]
mov dword [ebp - 0x4ec], ecx
mov edx, dword [ebp - 0x4ec]
cmp edx, dword [ebp - 0xc68]
je 0x46bc3b
mov eax, dword [ebp - 0x4ec]
cmp dword [eax + 0x30], 0
jne 0x46ba06
mov dword [ebp - 0x2a8], 0
push ecx
push edx
add esp, 4
or ecx, 0x20fa
and ecx, 0x11d21
and ecx, 0x13956
xor ecx, 0x11a2c
pop ecx
push esi
add esi, 0xf7a6
sub esi, 0xea20
sub esi, 0xf087
pop esi
mov ecx, dword [ebp - 0x2a8]
mov edx, dword [ecx + 0x18]
mov dword [ebp - 0x304], edx
push eax
push ebx
add esp, 4
sub eax, 0xc4ba
pop eax
push ebx
sub ebx, 0xb123
sub ebx, 0x1244b
jmp 0x46bca5
pop ebx
push ecx
push eax
add esp, 4
xor ecx, 0x1550a
and ecx, 0x3e9a
pop ecx
mov dword [ebp - 0x730], 0
mov eax, dword [ebp - 0x304]
mov dword [ebp - 0x1580], eax
cmp dword [ebp - 0x1580], 0
jne 0x46bce8
mov ecx, dword [ebp - 0x730]
mov dword [ebp - 0x4f0], ecx
jmp 0x46bfd9
mov edx, dword [ebp - 0x1580]
mov eax, dword [ebp - 0x304]
add eax, dword [edx + 0x3c]
mov dword [ebp - 0x1584], eax
jne 0x46bd10
mov ecx, dword [ebp - 0x730]
mov dword [ebp - 0x4f0], ecx
jmp 0x46bfd9
mov edx, 8
imul eax, edx, 0
mov ecx, dword [ebp - 0x1584]
mov edx, dword [ecx + eax + 0x78]
mov dword [ebp - 0x1588], edx
cmp dword [ebp - 0x1588], 0
jne 0x46bd42
mov eax, dword [ebp - 0x730]
mov dword [ebp - 0x4f0], eax
jmp 0x46bfd9
mov ecx, dword [ebp - 0x304]
add ecx, dword [ebp - 0x1588]
mov dword [ebp - 0x724], ecx
jne 0x46bd67
mov edx, dword [ebp - 0x730]
mov dword [ebp - 0x4f0], edx
jmp 0x46bfd9
mov eax, dword [ebp - 0x724]
mov ecx, dword [ebp - 0x304]
add ecx, dword [eax + 0x20]
mov dword [ebp - 0x1900], ecx
mov edx, dword [ebp - 0x724]
mov eax, dword [ebp - 0x304]
add eax, dword [edx + 0x24]
mov dword [ebp - 0x1904], eax
mov ecx, dword [ebp - 0x724]
mov edx, dword [ebp - 0x304]
add edx, dword [ecx + 0x1c]
mov dword [ebp - 0x1908], edx
mov dword [ebp - 0x728], 0
jmp 0x46bdc1
mov eax, dword [ebp - 0x728]
add eax, 1
mov dword [ebp - 0x728], eax
mov ecx, dword [ebp - 0x724]
mov edx, dword [ebp - 0x728]
cmp edx, dword [ecx + 0x18]
jae 0x46bfcd
mov eax, dword [ebp - 0x728]
mov ecx, dword [ebp - 0x1900]
mov edx, dword [ebp - 0x304]
add edx, dword [ecx + eax*4]
mov dword [ebp - 0x72c], edx
mov eax, dword [ebp - 0x728]
mov ecx, dword [ebp - 0x1904]
movzx edx, word [ecx + eax*2]
mov eax, dword [ebp - 0x1908]
mov ecx, dword [ebp - 0x304]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x190c], ecx
mov dword [ebp - 0x18c], 0
jmp 0x46be31
mov edx, dword [ebp - 0x18c]
add edx, 1
mov dword [ebp - 0x18c], edx
mov eax, dword [ebp - 0x72c]
add eax, dword [ebp - 0x18c]
movsx ecx, byte [eax]
test ecx, ecx
je 0x46bee3
mov edx, dword [ebp - 0x18c]
movsx eax, byte [ebp + edx - 0x960]
test eax, eax
je 0x46bee3
push edi
add edi, 0x4557
jmp 0x46be6a
jmp 0x46be71
pop edi
push esi
push eax
add esp, 4
xor esi, 0x10b9c
pop esi
push ecx
push ebx
add esp, 4
or ecx, 0x8044
xor ecx, 0x144d3
pop ecx
mov ecx, dword [ebp - 0x72c]
add ecx, dword [ebp - 0x18c]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x18c]
movsx ecx, byte [ebp + eax - 0x960]
cmp edx, ecx
je 0x46bed5
mov edx, dword [ebp - 0x72c]
add edx, dword [ebp - 0x18c]
movsx eax, byte [edx]
xor eax, 0x20
mov ecx, dword [ebp - 0x18c]
movsx edx, byte [ebp + ecx - 0x960]
cmp eax, edx
jne 0x46bedc
jmp 0x46be22
jmp 0x46bee3
push eax
sub eax, 0x5e55
and eax, 0x16149
and eax, 0x32c9
pop eax
push edx
push edi
add esp, 4
sub edx, 0x10eea
and edx, 0xf02c
and edx, 0x6337
sub edx, 0x7b3a
pop edx
mov eax, dword [ebp - 0x72c]
add eax, dword [ebp - 0x18c]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x18c]
movsx eax, byte [ebp + edx - 0x960]
cmp ecx, eax
jne 0x46bf42
mov dword [ebp - 0xc6c], 0
jmp 0x46bfb1
push edi
push ebx
add esp, 4
jmp 0x46bf50
call 0x46bf5e
add byte [ebx + 0x3d], cl
cmp bh, byte [ecx]
aaa
inc eax
dec edi
inc ebx
add esp, 4
pop edi
push edx
push eax
add esp, 4
add edx, 0x1752e
sub edx, 0xb058
pop edx
mov ecx, dword [ebp - 0x72c]
add ecx, dword [ebp - 0x18c]
movsx edx, byte [ecx]
or edx, 0x20
mov eax, dword [ebp - 0x18c]
movsx ecx, byte [ebp + eax - 0x960]
or ecx, 0x20
cmp edx, ecx
jge 0x46bfa7
mov dword [ebp - 0xc6c], 0xffffffff
jmp 0x46bfb1
mov dword [ebp - 0xc6c], 1
cmp dword [ebp - 0xc6c], 0
jne 0x46bfc8
mov edx, dword [ebp - 0x190c]
mov dword [ebp - 0x4f0], edx
jmp 0x46bfd9
jmp 0x46bdb2
mov eax, dword [ebp - 0x730]
mov dword [ebp - 0x4f0], eax
mov ecx, dword [ebp - 0x4f0]
mov dword [ebp - 0xa58], ecx
push edx
push edx
add esp, 4
and edx, 0xfc1d
or edx, 0x127ff
add edx, 0x4fee
pop edx
push eax
and eax, 0x185ee
xor eax, 0x2608
xor eax, 0x5ef8
or eax, 0x4b61
pop eax
mov edx, dword [ebp - 0xa58]
mov dword [ebp - 0x1910], edx
lea eax, [ebp - 0xc70]
push eax
push 0x40
mov ecx, dword [ebp - 0x158c]
push ecx
mov edx, dword [ebp - 0x3cc]
push edx
call dword [ebp - 0x1910]
test eax, eax
jne 0x46c08a
push ebx
or ebx, 0x57a4
jmp 0x46c054
call 0x46c062
add byte [eax + ecx*2], dh
cmp dh, byte [edi]
cmp dword [ebp + eax*2 + 0x48], eax
add esp, 4
call 0x46c072
add byte [ebp + 0x38], al
cmp dword [edi + 0x45], ecx
inc edx
inc edi
add esp, 4
pop ebx
mov eax, dword [ebp - 0x738]
mov dword [ebp - 0x1914], eax
push 0
call dword [ebp - 0x1914]
mov ecx, dword [ebp - 0x1918]
mov dword [ebp - 0x734], ecx
jmp 0x46c0a7
mov edx, dword [ebp - 0x734]
add edx, 1
mov dword [ebp - 0x734], edx
mov eax, dword [ebp - 0x734]
cmp eax, dword [ebp - 0xa5c]
jae 0x46c103
push ecx
or ecx, 0x127ea
xor ecx, 0xe8a
and ecx, 0x13452
pop ecx
push ebx
push edx
add esp, 4
sub ebx, 0x18389
xor ebx, 0xd424
and ebx, 0x172ad
jmp 0x46c0e6
pop ebx
movzx ecx, byte [ebp - 0x381]
mov edx, dword [ebp - 0x734]
movsx eax, byte [edx]
sub eax, ecx
mov ecx, dword [ebp - 0x734]
mov byte [ecx], al
jmp 0x46c098
mov edx, dword [ebp - 0xa58]
mov dword [ebp - 0x191c], edx
lea eax, [ebp - 0xc70]
push eax
mov ecx, dword [ebp - 0xc70]
push ecx
mov edx, dword [ebp - 0x158c]
push edx
mov eax, dword [ebp - 0x3cc]
push eax
call dword [ebp - 0x191c]
test eax, eax
jne 0x46c17b
push eax
add eax, 0x165a9
call 0x46c148
add byte [edx], bh
dec edx
push eax
xor edx, dword [eax + 0x36]
add esp, 4
or eax, 0x184af
xor eax, 0x3da
pop eax
push edi
jmp 0x46c160
xor edi, 0xfd00
pop edi
mov ecx, dword [ebp - 0x738]
mov dword [ebp - 0x1920], ecx
push 0
call dword [ebp - 0x1920]
push edx
add edx, 0x1147a
pop edx
push ebx
push esi
add esp, 4
add ebx, 0x124dc
sub ebx, 0x8dba
pop ebx
push eax
push edi
add esp, 4
add eax, 0xd075
pop eax
push edi
push ebx
add esp, 4
and edi, 0x1c30
pop edi
push edx
mov ecx, 0x10101010
pop edx
push ecx
mov ecx, 0xffff08ff
pop ecx
pop esi
mov esi, ecx
aam 0x3b
or byte [eax], cl
mov esi, ecx
push es
jge 0x46c1d0
or byte [ecx + 0x8fd21d6], cl
or byte [ecx + 0x84bdad6], cl
fimul dword [ebx + 8]
or byte [esi + 0x5a], ah
pop ecx
mov ecx, esp
or al, 0x89
out dx, al
cld
or byte [eax], cl
mov edx, edi
arpl word [eax - 0x576f7f8], bp
movsd dword es:[edi], dword [esi]
and byte [eax], cl
or byte [edx - 0x3e], ah
jae 0x46c1f8
or byte [eax], cl
outsb dx, byte [esi]
xchg ecx, eax
popfd
invalid
pop es
shr byte [ebp + 8], 8
or byte [esi - 0x6f], ch
invalid