Function at 0x414190
Capabilities:
Contain obfuscated stackstrings
Encode data using base64
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x938
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.004019d0
mov dword [esp + 0x124], eax
mov dword [esp + 0x2e8], 0x6964cbd7
lea eax, [esp + 0x2e8]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x2e8]
mov ecx, eax
sub ecx, 0x8086ec2a
je 0x415808
jmp 0x4141de
mov ecx, eax
sub ecx, 0x822d7ce8
je 0x41750e
jmp 0x4141ee
mov ecx, eax
sub ecx, 0x8460453b
je 0x418052
jmp 0x4141fe
mov ecx, eax
sub ecx, 0x8526cdc4
je 0x415a12
jmp 0x41420e
mov ecx, eax
sub ecx, 0x87295c63
je 0x4184ca
jmp 0x41421e
mov ecx, eax
sub ecx, 0x88690602
je 0x415499
jmp 0x41422e
mov ecx, eax
sub ecx, 0x88bee1a1
je 0x417568
jmp 0x41423e
mov ecx, eax
sub ecx, 0x899869c8
je 0x41683b
jmp 0x41424e
mov ecx, eax
sub ecx, 0x8a34e229
je 0x4174d0
jmp 0x41425e
mov ecx, eax
sub ecx, 0x8a8d96ec
je 0x417cdb
jmp 0x41426e
mov ecx, eax
sub ecx, 0x8b0b7834
je 0x415fc3
jmp 0x41427e
mov ecx, eax
sub ecx, 0x8b87fc89
je 0x417d32
jmp 0x41428e
mov ecx, eax
sub ecx, 0x8e73d03f
je 0x415972
jmp 0x41429e
mov ecx, eax
sub ecx, 0x8e993d7b
je 0x417d8d
jmp 0x4142ae
mov ecx, eax
sub ecx, 0x8ed548d8
je 0x4170bd
jmp 0x4142be
mov ecx, eax
sub ecx, 0x91919823
je 0x417e1d
jmp 0x4142ce
mov ecx, eax
sub ecx, 0x92d0ab72
je 0x416b50
jmp 0x4142de
mov ecx, eax
sub ecx, 0x95ad1e38
je 0x418071
jmp 0x4142ee
mov ecx, eax
sub ecx, 0x95ba729d
je 0x41830a
jmp 0x4142fe
mov ecx, eax
sub ecx, 0x967248d6
je 0x417dab
jmp 0x41430e
mov ecx, eax
sub ecx, 0x96fd0359
je 0x4174ef
jmp 0x41431e
mov ecx, eax
sub ecx, 0x976fc0f2
je 0x4181c8
jmp 0x41432e
mov ecx, eax
sub ecx, 0x982ead38
je 0x418702
jmp 0x41433e
mov ecx, eax
sub ecx, 0x983a5a5d
je 0x415e77
jmp 0x41434e
mov ecx, eax
sub ecx, 0x992bd204
je 0x416869
jmp 0x41435e
mov ecx, eax
sub ecx, 0x9a55ded7
je 0x418023
jmp 0x41436e
mov ecx, eax
sub ecx, 0x9c6ee5f5
je 0x416630
jmp 0x41437e
mov ecx, eax
sub ecx, 0x9e65f444
je 0x4182f3
jmp 0x41438e
mov ecx, eax
sub ecx, 0xa2963090
je 0x416c2f
jmp 0x41439e
mov ecx, eax
sub ecx, 0xa46a1ade
je 0x4156c6
jmp 0x4143ae
mov ecx, eax
sub ecx, 0xa61223a9
je 0x416341
jmp 0x4143be
mov ecx, eax
sub ecx, 0xa69560bd
je 0x416484
jmp 0x4143ce
mov ecx, eax
sub ecx, 0xa6b13025
je 0x4157db
jmp 0x4143de
mov ecx, eax
sub ecx, 0xa721e9b0
je 0x415e4d
jmp 0x4143ee
mov ecx, eax
sub ecx, 0xa8f8ee3d
je 0x415109
jmp 0x4143fe
mov ecx, eax
sub ecx, 0xaaaa719c
je 0x4158ae
jmp 0x41440e
mov ecx, eax
sub ecx, 0xab5afcd0
je 0x417d16
jmp 0x41441e
mov ecx, eax
sub ecx, 0xad3974c8
je 0x41619a
jmp 0x41442e
mov ecx, eax
sub ecx, 0xaec78183
je 0x41628b
jmp 0x41443e
mov ecx, eax
sub ecx, 0xaeebebeb
je 0x416c9f
jmp 0x41444e
mov ecx, eax
sub ecx, 0xb0406fe6
je 0x416107
jmp 0x41445e
mov ecx, eax
sub ecx, 0xb04ccbf0
je 0x417d50
jmp 0x41446e
mov ecx, eax
sub ecx, 0xb06f6d07
je 0x415850
jmp 0x41447e
mov ecx, eax
sub ecx, 0xb0c71196
je 0x417dc9
jmp 0x41448e
mov ecx, eax
sub ecx, 0xb5e7ce91
je 0x41819a
jmp 0x41449e
mov ecx, eax
sub ecx, 0xb6a67e09
je 0x41544e
jmp 0x4144ae
mov ecx, eax
sub ecx, 0xb6d8799f
je 0x4168af
jmp 0x4144be
mov ecx, eax
sub ecx, 0xb6f9e6cb
je 0x41545d
jmp 0x4144ce
mov ecx, eax
sub ecx, 0xb74952b0
je 0x416595
jmp 0x4144de
mov ecx, eax
sub ecx, 0xb755418e
je 0x417a18
jmp 0x4144ee
mov ecx, eax
sub ecx, 0xb7c8cc00
je 0x415841
jmp 0x4144fe
mov ecx, eax
sub ecx, 0xbafb1357
je 0x41587a
jmp 0x41450e
mov ecx, eax
sub ecx, 0xbb311bdb
je 0x416807
jmp 0x41451e
mov ecx, eax
sub ecx, 0xbe4b4d87
je 0x4158d8
jmp 0x41452e
mov ecx, eax
sub ecx, 0xbe8db217
je 0x415cc4
jmp 0x41453e
mov ecx, eax
sub ecx, 0xbebf6889
je 0x416332
jmp 0x41454e
mov ecx, eax
sub ecx, 0xc2af4781
je 0x415d53
jmp 0x41455e
mov ecx, eax
sub ecx, 0xc3442a17
je 0x414f07
jmp 0x41456e
mov ecx, eax
sub ecx, 0xc3ad7387
je 0x4157bd
jmp 0x41457e
mov ecx, eax
sub ecx, 0xc568c01f
je 0x416391
jmp 0x41458e
mov ecx, eax
sub ecx, 0xc583bf9e
je 0x4163cd
jmp 0x41459e
mov ecx, eax
sub ecx, 0xc5af8e27
je 0x416151
jmp 0x4145ae
mov ecx, eax
sub ecx, 0xc5bdf75b
je 0x415826
jmp 0x4145be
mov ecx, eax
sub ecx, 0xc6c998f7
je 0x4156ff
jmp 0x4145ce
mov ecx, eax
sub ecx, 0xc8f37ac2
je 0x4177f8
mov al, byte [esp + 0x64]
mov byte [esp + 0x1d0], al
mov byte [esp + 0xb4], 0xe2
mov byte [esp + 0xb5], 0x15
mov byte [esp + 0xb6], 0xb6
mov eax, 3
mov byte [esp + eax + 0xb4], 0
add eax, 1
cmp eax, 7
jne 0x414f2f
xor eax, eax
cmp eax, 7
jae 0x414f9e
movzx ecx, byte [esp + eax + 0xb4]
mov esi, eax
shl esi, 1
and esi, 0xff0b5e3c
mov edx, eax
xor edx, 0x7f85af1e
add edx, esi
mov esi, ecx
shl esi, 1
xor esi, 0xffffffff
add esi, ecx
mov edi, edx
and edi, esi
xor edx, 0xffffffff
and ecx, edx
or ecx, edi
mov edx, ecx
add edx, 0x69
mov esi, ecx
shl esi, 1
and esi, 2
xor esi, 2
and edx, 0xfe
and ecx, 1
or edx, ecx
add edx, esi
mov byte [esp + eax + 0xb4], dl
add eax, 1
jmp 0x414f41
mov eax, dword [esp + 0x2c]
lea ecx, [esp + 0xb4]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], 3
call fcn.00401b40
cmp eax, 0
setne al
and al, 1
mov byte [esp + 0x6b], al
mov eax, dword [esp + 0x28]
mov dword [eax], 0x272b283e
jmp 0x41871c
mov eax, dword [esp + 0x28]
mov dword [eax], 0x358fb7c9
jmp 0x41871c
mov eax, dword [esp + 0x28]
mov dword [eax], 0xb6f9e6cb
jmp 0x41871c
mov eax, dword [esp + 0x28]
mov dword [eax], 0xf6e5b8fe
jmp 0x41871c
mov al, byte [esp + 0x178]
mov byte [esp + 0x1e8], al
mov byte [esp + 0x370], 0xf0
mov byte [esp + 0x371], 0x61
mov eax, 2
mov byte [esp + eax + 0x370], 0
add eax, 1
cmp eax, 5
jne 0x4154bc
xor eax, eax
cmp eax, 5
jae 0x415529
movzx ecx, byte [esp + eax + 0x370]
mov edx, eax
add edx, 0x18
mov esi, 0x67
sub esi, eax
and esi, 0xa8
and edx, 0x57
or esi, edx
xor esi, 0x57
mov edx, 0x67
sub edx, eax
and edx, esi
xor edx, 0xffffffff
and edx, ecx
mov esi, 0x949cd267
sub esi, eax
xor ecx, 0xffffffff
and esi, ecx
or edx, esi
mov ecx, edx
shl ecx, 1
xor ecx, 0xffffffff
add edx, ecx
add dl, 8
mov byte [esp + eax + 0x370], dl
add eax, 1
jmp 0x4154ce
mov eax, dword [esp + 0x2c]
lea ecx, [esp + 0x370]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.004018c0
mov dword [esp + 0x12c], eax
mov eax, 0xfd42f866
cmp dword [esp + 0x12c], 0
jne 0x41555b
mov eax, 0xdae12c2b
mov ecx, dword [esp + 0x28]
mov dword [ecx], eax
jmp 0x41871c
mov eax, dword [esp + 0x28]
mov dword [eax], 0x1bb0a66c
jmp 0x41871c
mov eax, dword [esp + 0x34]
mov dword [esp], eax
call fcn.0043c860
mov eax, dword [esp + 0x28]
mov dword [eax], 0x3c9f1902
mov eax, dword [esp + 0x44]
mov dword [esp + 0x2fc], 4
mov dword [esp + 0x2f8], eax
jmp 0x41871c
mov eax, dword [esp + 0x28]
mov dword [eax], 0x3ec1eddd
jmp 0x41871c
mov eax, dword [esp + 0x28]
mov dword [eax], 0x348e8e72
jmp 0x41871c
mov eax, dword [esp + 0x28]
mov dword [eax], 0x2a344671
jmp 0x41871c
mov eax, dword [esp + 0x44]
mov dword [esp], eax
call fcn.00408400
mov eax, dword [esp + 0x28]
mov dword [eax], 0xb7c8cc00
jmp 0x41871c
mov eax, dword [esp + 0x28]
mov dword [eax], 0xb06f6d07
jmp 0x41871c
mov eax, dword [esp + 0x28]
mov dword [eax], 0x6b91309a
jmp 0x41871c
mov eax, dword [esp + 0x28]
mov dword [eax], 0xe3acbb89
mov eax, dword [esp + 0x44]
mov dword [esp + 0x2f4], 4
mov dword [esp + 0x2f0], eax
jmp 0x41871c
mov eax, dword [esp + 0x44]
mov dword [esp], eax
call fcn.00408400
mov eax, dword [esp + 0x28]
mov dword [eax], 0x168824f7
jmp 0x41871c
mov eax, dword [esp + 0x28]
mov dword [eax], 0xe3acbb89
mov eax, dword [esp + 0x134]
mov dword [esp + 0x2f4], 0
mov dword [esp + 0x2f0], eax
jmp 0x41871c
cmp dword [esp + 0x334], 0
sete al
and al, 1
mov byte [esp + 0x6d], al
mov eax, dword [esp + 0x28]
mov dword [eax], 0xd32ce241
jmp 0x41871c
mov eax, dword [esp + 0x300]
mov ecx, dword [esp + 0x304]
mov dword [esp + 0x338], eax
mov dword [esp + 0x138], ecx
mov ecx, dword [esp + 0x338]
mov eax, 0xc14b6b7
cmp ecx, dword [esp + 0x398]
jb 0x415a48
mov eax, 0x23154089
mov ecx, dword [esp + 0x28]
mov dword [ecx], eax
jmp 0x41871c
mov eax, 0xc2af4781
test byte [esp + 0x6e], 1
jne 0x415cd5
mov eax, 0x7fb5b34b
mov ecx, dword [esp + 0x28]
mov dword [ecx], eax
jmp 0x41871c
mov eax, dword [esp + 0x34]
mov dword [esp], eax
call fcn.0043c860
mov eax, dword [esp + 0x28]
mov dword [eax], 0x22d6052b
mov dword [esp + 0x100], 4
mov dword [esp + 0xfc], 0
jmp 0x41871c
mov eax, dword [esp + 0x48]
mov dword [esp], eax
call fcn.00408400
mov eax, dword [esp + 0x28]
mov dword [eax], 0x5b43f56f
jmp 0x41871c
mov eax, dword [esp + 0x34]
mov dword [esp], eax
call fcn.0043c860
mov eax, dword [esp + 0x28]
mov dword [eax], 0x22d6052b
mov eax, dword [esp + 0x48]
mov dword [esp + 0x100], 4
mov dword [esp + 0xfc], eax
jmp 0x41871c
mov eax, dword [esp + 0x28]
mov dword [eax], 0xf9fe316b
jmp 0x41871c
mov eax, dword [esp + 0x28]
mov dword [eax], 0x684073fe
jmp 0x41871c
mov eax, dword [esp + 0x28]
mov dword [eax], 0x70fb649f
jmp 0x41871c
mov al, byte [esp + 0x58]
mov byte [esp + 0x208], al
mov byte [esp + 0xa0], 0x22
mov byte [esp + 0xa1], 0x4f
mov byte [esp + 0xa2], 0xfe
mov byte [esp + 0xa3], 0x51
mov byte [esp + 0xa4], 0xe5
mov byte [esp + 0xa5], 0x53
mov byte [esp + 0xa6], 0x21
mov byte [esp + 0xa7], 0x55
mov byte [esp + 0xa8], 0x54
mov byte [esp + 0xa9], 0x57
mov eax, 0xa
mov byte [esp + eax + 0xa0], 0
add eax, 1
cmp eax, 0xe
jne 0x4161fa
xor eax, eax
cmp eax, 0xe
jae 0x416256
movzx edx, byte [esp + eax + 0xa0]
mov ecx, eax
add ecx, 0xdc456aed
xor ecx, edx
mov edx, ecx
shl edx, 1
and edx, 2
mov esi, 1
sub esi, ecx
mov edi, 1
sub edi, ecx
and esi, edi
or ecx, 1
add ecx, 0x5e
or esi, 0xfe
and ecx, esi
add ecx, edx
mov byte [esp + eax + 0xa0], cl
add eax, 1
jmp 0x41620c
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0xa0]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.00418b10
mov eax, dword [esp + 0x28]
mov dword [eax], 0x30e0eb70
jmp 0x41871c
mov eax, dword [esp + 0x28]
mov dword [eax], 0x22d6052b
mov eax, dword [esp + 0x48]
mov dword [esp + 0x100], 0
mov dword [esp + 0xfc], eax
jmp 0x41871c
mov eax, dword [esp + 0x28]
mov dword [eax], 0xa61223a9
jmp 0x41871c
mov eax, dword [esp + 0x28]
mov dword [eax], 0x4b21fbcd
mov eax, dword [esp + 0x3a4]
mov dword [esp + 0x108], 0
mov dword [esp + 0x104], eax
jmp 0x41871c
cmp dword [esp + 0x3a8], 0
sete al
and al, 1
mov byte [esp + 0x70], al
mov eax, dword [esp + 0x28]
mov dword [eax], 0xd19e9549
jmp 0x41871c
mov eax, dword [esp + 0x38]
lea ecx, [esp + 0x36c]
xor edx, edx
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], 0x100002
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 5
mov dword [esp + 0x14], 0x60
mov dword [esp + 0x18], 0x80
call fcn.00441300
mov dword [esp + 0x350], eax
mov eax, 0x33fb4bbb
cmp dword [esp + 0x350], 0
jge 0x416429
mov eax, 0xb74952b0
mov ecx, dword [esp + 0x28]
mov dword [ecx], eax
mov eax, dword [esp + 0x350]
mov dword [esp + 0x30c], eax
jmp 0x41871c
mov esi, dword [esp + 0x36c]
mov al, byte [esp + 0x1bc]
mov byte [esp + 0x240], al
mov byte [esp + 0x1c0], 0x9d
mov byte [esp + 0x1c1], 0x9a
mov byte [esp + 0x1c2], 0x9b
mov byte [esp + 0x1c3], 0x98
mov eax, 4
mov byte [esp + eax + 0x1c0], 0
add eax, 1
cmp eax, 6
jne 0x4164be
xor eax, eax
cmp eax, 6
jae 0x416515
movzx edx, byte [esp + eax + 0x1c0]
mov edi, eax
add edi, 0x9bb1ba1b
mov ecx, edx
xor ecx, 0xffffffff
and edi, ecx
mov ecx, 0xe4
sub ecx, eax
and ecx, edx
or ecx, edi
mov edx, ecx
shl edx, 1
and edx, 0xf0
xor ecx, 0x78
add ecx, edx
add cl, 1
mov byte [esp + eax + 0x1c0], cl
add eax, 1
jmp 0x4164d0
mov edi, dword [esp + 0x1c0]
xor ebx, ebx
cmp ebx, dword [0x44e0c0]
jb 0x416528
jmp 0x416578
mov eax, dword [0x44e0c4]
cmp dword [eax + ebx*8], 0x1b6183f2
sete cl
mov byte [esp + 0x65], cl
test cl, 1
jne 0x416542
jmp 0x41656a
mov eax, dword [eax + ebx*8 + 4]
cmp eax, edi
je 0x41656a
mov ecx, dword [0x44e0c8]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 4
mov dword [esp + 0xc], esi
call fcn.0043eca0
jmp 0x41656a
test byte [esp + 0x65], 1
je 0x416573
jmp 0x416578
add ebx, 1
jmp 0x41651e
mov eax, dword [esp + 0x28]
mov dword [eax], 0xb74952b0
mov eax, dword [esp + 0x3ac]
mov dword [esp + 0x30c], eax
jmp 0x41871c
mov esi, dword [esp + 0x30c]
mov eax, dword [esp + 0x34]
mov dword [esp], eax
call fcn.0043c860
mov dword [esp + 0x34], 0
mov eax, 0xdca14aa9
cmp esi, 0
jge 0x4165bf
mov eax, 0xf2924cbb
mov ecx, dword [esp + 0x28]
mov dword [ecx], eax
jmp 0x41871c
mov al, byte [esp + 0x54]
mov byte [esp + 0x210], al
mov byte [esp + 0x30], 0xae
mov byte [esp + 0x31], 0xa7
mov byte [esp + 0x32], 0x32
mov eax, 3
mov byte [esp + eax + 0x30], 0
add eax, 1
cmp eax, 4
jne 0x41664f
xor eax, eax
cmp eax, 4
jae 0x4166a7
movzx esi, byte [esp + eax + 0x30]
mov edx, eax
add edx, 0x8c
mov ecx, eax
add ecx, 0x8c
mov edi, eax
add edi, 0x8c
or ecx, edi
and ecx, esi
mov edi, eax
add edi, 0x8c
and edx, edi
or edx, esi
xor ecx, edx
add cl, 0x44
mov byte [esp + eax + 0x30], cl
mov ecx, eax
shl ecx, 1
and ecx, 2
xor eax, 1
add eax, ecx
jmp 0x41665e
mov eax, dword [esp + 0x2c]
lea ecx, [esp + 0x30]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.004018c0
mov dword [esp + 0xd0], eax
mov al, byte [esp + 0x50]
mov byte [esp + 0x218], al
mov byte [esp + 0x98], 0xa9
mov byte [esp + 0x99], 0xdf
mov byte [esp + 0x9a], 0x4e
mov eax, 3
mov byte [esp + eax + 0x98], 0
add eax, 1
cmp eax, 8
jne 0x4166ea
xor eax, eax
cmp eax, 8
jae 0x416780
movzx ecx, byte [esp + eax + 0x98]
mov edx, eax
and edx, 0xc2acc710
mov edi, eax
and edi, 0xc2acc710
mov esi, eax
and esi, 2
xor esi, 2
imul esi, edi
mov edi, eax
and edi, 2
or edx, 2
imul edx, edi
add edx, esi
mov esi, eax
xor esi, 0xc2acc712
add esi, edx
mov edi, ecx
xor edi, 0xffffffff
mov edx, esi
or edx, edi
xor esi, 0xffffffff
or ecx, esi
add edx, ecx
mov ecx, 0xa3
sub ecx, edx
mov esi, edx
shl esi, 1
and esi, 2
xor esi, 2
and ecx, 0xfe
and edx, 1
or ecx, edx
add ecx, esi
mov byte [esp + eax + 0x98], cl
mov ecx, eax
shl ecx, 1
or ecx, 1
sub ecx, eax
mov eax, ecx
jmp 0x4166fc
mov eax, dword [esp + 0x2c]
lea ecx, [esp + 0x98]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.004018c0
mov dword [esp + 0x13c], eax
mov eax, dword [esp + 0x38]
mov dword [esp], eax
call fcn.00418b60
mov dword [esp + 0x354], eax
cmp dword [esp + 0xd0], 0
setne al
and al, 1
mov byte [esp + 0x42], al
mov eax, dword [esp + 0x28]
mov dword [eax], 0xe3e75e21
jmp 0x41871c
mov eax, dword [esp + 0xd0]
mov dword [esp], eax
call fcn.00408500
mov dword [esp + 0x3b0], eax
mov eax, dword [esp + 0x28]
mov dword [eax], 0x4f5cacab
jmp 0x41871c
mov eax, dword [esp + 0x3b0]
sub eax, 0xffffffff
mov dword [esp + 0x3b4], eax
mov eax, dword [esp + 0x28]
mov dword [eax], 0x992bd204
mov eax, dword [esp + 0x3b4]
mov dword [esp + 0x310], eax
jmp 0x41871c
mov eax, dword [esp + 0x310]
mov dword [esp + 0x140], eax
cmp dword [esp + 0x13c], 0
setne al
and al, 1
mov byte [esp + 0x43], al
mov eax, 0xb6d8799f
test byte [esp + 0x43], 1
jne 0x416899
mov eax, 0x4ebbc518
mov ecx, dword [esp + 0x28]
mov dword [ecx], eax
mov dword [esp + 0x314], 0
jmp 0x41871c
mov eax, dword [esp + 0x13c]
mov dword [esp], eax
call fcn.00408500
sub eax, 0xffffffff
mov dword [esp + 0x3b8], eax
mov eax, dword [esp + 0x28]
mov dword [eax], 0x4ebbc518
mov eax, dword [esp + 0x3b8]
mov dword [esp + 0x314], eax
jmp 0x41871c
mov eax, dword [esp + 0x148]
mov word [eax], 0x2c
mov eax, dword [esp + 0x35c]
mov ecx, dword [esp + 0x140]
mov edx, dword [esp + 0xd0]
xor esi, esi
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0
call fcn.0040acf0
shl eax, 1
add eax, dword [esp + 0x35c]
mov dword [esp + 0x3bc], eax
mov eax, dword [esp + 0x28]
mov dword [eax], 0xf558843c
mov eax, dword [esp + 0x3bc]
mov dword [esp + 0x318], eax
jmp 0x41871c
mov eax, dword [esp + 0x28]
mov dword [eax], 0x18681d66
mov eax, dword [esp + 0x358]
mov dword [esp + 0x114], 0
mov dword [esp + 0x110], 0
mov dword [esp + 0x10c], eax
jmp 0x41871c
mov eax, dword [esp + 0x38]
mov dword [esp], eax
call fcn.00418b60
xor ecx, ecx
sub ecx, eax
mov eax, 0x1d
sub eax, ecx
add eax, 1
mov ecx, 2
mul ecx
seto dl
mov ecx, 0xffffffff
test dl, 1
jne 0x416ccf
mov ecx, eax
mov dword [esp], ecx
call fcn.004083f0
mov dword [esp + 0x364], eax
mov al, byte [esp + 0x160]
mov byte [esp + 0x224], al
mov byte [esp + 0x94], 0x66
mov byte [esp + 0x95], 0x87
mov byte [esp + 0x96], 0x86
mov byte [esp + 0x97], 0x81
xor eax, eax
cmp eax, 4
jae 0x416d30
mov cl, byte [esp + eax + 0x94]
mov dl, 0x9e
sub dl, al
xor dl, cl
mov cl, 0x1a
sub cl, dl
mov byte [esp + eax + 0x94], cl
add eax, 1
jmp 0x416d0e
mov al, byte [esp + 0x15c]
mov byte [esp + 0x228], al
mov byte [esp + 0x258], 0xf8
mov byte [esp + 0x259], 0x49
mov byte [esp + 0x25a], 0xe5
mov byte [esp + 0x25b], 0x57
mov byte [esp + 0x25c], 0xef
mov byte [esp + 0x25d], 0x55
mov byte [esp + 0x25e], 0xff
mov byte [esp + 0x25f], 0x53
mov byte [esp + 0x260], 0xee
mov byte [esp + 0x261], 0x51
mov byte [esp + 0x262], 0xe1
mov byte [esp + 0x263], 0x5f
mov byte [esp + 0x264], 0xf4
mov byte [esp + 0x265], 0x5d
mov byte [esp + 0x266], 0xf7
mov byte [esp + 0x267], 0x5b
mov byte [esp + 0x268], 0xec
mov byte [esp + 0x269], 0x59
mov byte [esp + 0x26a], 0x12
mov byte [esp + 0x26b], 0xa7
mov byte [esp + 0x26c], 0xc4
mov byte [esp + 0x26d], 0xa5
mov byte [esp + 0x26e], 0xd7
mov byte [esp + 0x26f], 0xa3
mov byte [esp + 0x270], 0xd
mov byte [esp + 0x271], 0xa1
mov byte [esp + 0x272], 0x16
mov byte [esp + 0x273], 0xaf
mov byte [esp + 0x274], 1
mov byte [esp + 0x275], 0xad
mov byte [esp + 0x276], 5
mov byte [esp + 0x277], 0xab
mov byte [esp + 0x278], 0xc8
mov byte [esp + 0x279], 0xa9
mov byte [esp + 0x27a], 0x18
mov byte [esp + 0x27b], 0xb7
mov byte [esp + 0x27c], 0xd
mov byte [esp + 0x27d], 0xb5
mov byte [esp + 0x27e], 2
mov byte [esp + 0x27f], 0xb3
mov byte [esp + 0x280], 0x11
mov byte [esp + 0x281], 0xb1
mov byte [esp + 0x282], 1
mov byte [esp + 0x283], 0xbf
mov byte [esp + 0x284], 3
mov byte [esp + 0x285], 0xbd
mov byte [esp + 0x286], 0xda
mov byte [esp + 0x287], 0xbb
mov byte [esp + 0x288], 0xcd
mov byte [esp + 0x289], 0xb9
mov byte [esp + 0x28a], 0x2c
mov byte [esp + 0x28b], 0x87
mov byte [esp + 0x28c], 0xe4
mov byte [esp + 0x28d], 0x85
mov byte [esp + 0x28e], 0xec
mov byte [esp + 0x28f], 0x83
mov byte [esp + 0x290], 0x80
mov byte [esp + 0x291], 0x81
mov eax, 0x3a
mov byte [esp + eax + 0x258], 0
add eax, 1
cmp eax, 0x3f
jne 0x416f13
xor eax, eax
cmp eax, 0x3f
jae 0x416f78
movzx edx, byte [esp + eax + 0x258]
mov ecx, eax
add ecx, 0x9b256cee
xor ecx, edx
mov edx, ecx
and edx, 0x8e1dd649
xor edx, 0x8e1dd649
and ecx, 0x71e229b6
sub ecx, edx
add ecx, 0x8662b5a2
mov edx, ecx
xor edx, 0xfe
mov esi, ecx
or esi, 1
and esi, edx
or ecx, 1
add ecx, esi
mov byte [esp + eax + 0x258], cl
add eax, 1
jmp 0x416f25
mov eax, dword [esp + 0x364]
lea ecx, [esp + 0x258]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.00409ee0
mov ecx, dword [esp + 0x38]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.00409ee0
lea ecx, [esp + 0x94]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.00409ee0
mov eax, dword [esp + 0x28]
mov dword [eax], 0x18681d66
mov eax, dword [esp + 0x364]
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x3c]
mov dword [esp + 0x114], edx
mov dword [esp + 0x110], ecx
mov dword [esp + 0x10c], eax
jmp 0x41871c
mov eax, 0xe6820864
test byte [esp + 0x72], 1
jne 0x4170ce
mov eax, 0xf6e5b8fe
mov ecx, dword [esp + 0x28]
mov dword [ecx], eax
mov eax, dword [esp + 0x3d4]
mov ecx, dword [esp + 0x3d0]
mov edx, dword [esp + 0x3cc]
mov dword [esp + 0x120], eax
mov dword [esp + 0x11c], ecx
mov dword [esp + 0x118], edx
jmp 0x41871c
mov eax, 0x95b9572
cmp dword [esp + 0xd8], 1
jl 0x4174e4
mov eax, 0x96fd0359
mov ecx, dword [esp + 0x28]
mov dword [ecx], eax
jmp 0x41871c
mov eax, 0x47ccedaf
cmp dword [esp + 0xd8], 2
jl 0x417503
mov eax, 0x822d7ce8
mov ecx, dword [esp + 0x28]
mov dword [ecx], eax
jmp 0x41871c
mov eax, 0x3d4a08d4
cmp dword [esp + 0xd8], 2
je 0x417522
mov eax, 0x8a8d96ec
mov ecx, dword [esp + 0x28]
mov dword [ecx], eax
jmp 0x41871c
lea edi, [esp + 0x4b0]
xor eax, eax
mov ecx, 0x11
rep stosd dword es:[edi], eax
mov dword [esp + 0x4b0], 0x44
mov eax, dword [0x44e0b4]
mov dword [esp], eax
mov dword [esp + 4], 0xef6ed546
call fcn.00440990
test eax, eax
setne cl
mov ecx, dword [esp + 0x150]
mov edx, dword [esp + 0xd4]
xor esi, esi
lea esi, [esp + 0x4b0]
lea edi, [esp + 0x3fc]
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x1c], 0
mov dword [esp + 0x20], esi
mov dword [esp + 0x24], edi
call eax
sub esp, 0x28
mov ecx, 0x1d23f430
cmp eax, 0
jne 0x41760e
mov ecx, 0xe484d809
mov eax, dword [esp + 0x28]
mov dword [eax], ecx
jmp 0x41871c
mov eax, dword [esp + 0x28]
mov dword [eax], 0x8a8d96ec
jmp 0x41871c
mov eax, dword [esp + 0x28]
mov dword [eax], 0x4c9ac855
jmp 0x41871c
mov eax, 0xb04ccbf0
test byte [esp + 0x73], 1
jne 0x417d27
mov eax, 0x8b87fc89
mov ecx, dword [esp + 0x28]
mov dword [ecx], eax
jmp 0x41871c
mov eax, dword [esp + 0x150]
mov dword [esp], eax
call fcn.00408400
mov eax, dword [esp + 0x28]
mov dword [eax], 0xb04ccbf0
jmp 0x41871c
mov eax, 0x8e993d7b
cmp dword [esp + 0xd4], 0
je 0x417d64
mov eax, 0x21b1954f
mov ecx, dword [esp + 0x28]
mov dword [ecx], eax
jmp 0x41871c
mov eax, dword [esp + 0x28]
mov dword [eax], 0x6fef029b
jmp 0x41871c
mov eax, dword [esp + 0x28]
mov dword [eax], 0xf6e5b8fe
jmp 0x41871c
mov eax, dword [esp + 0x28]
mov dword [eax], 0xca65dcf9
jmp 0x41871c
mov al, byte [esp + 0x40]
and al, 1
movzx eax, al
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
nop
adc byte [edx + 0x4f6e3ded], dh
jmp dword [esi]
aad 0xac
int1
popal
mov edx, 0xa83b9ab2
pop ss
pop edi
jl 0x418082
and esi, dword [edi + 0x448b03f8]
and al, 0x28
mov dword [eax], 0x8e73d03f
mov bh, 0xf8
add ecx, dword [ebx - 0x38d7dbbc]
add byte [edi], bh
sal byte [ebx - 0x72], 1
jmp 0x41871c
ficom word [edi - 0x43]
jmp 0x41805e
and al, 0x3c
add eax, dword [eax]
add byte [ecx - 0xd7c3e], cl
mov esi, ecx
and esi, edx
mov edx, ecx
xor edx, 0xffffffff
mov edi, eax
and edi, edx
imul edi, esi
mov edx, eax
and edx, ecx
or eax, ecx
imul eax, edx
add eax, edi
mov edx, eax
and edx, 0xfffffffd
mov ecx, eax
or ecx, 0xfffffffd
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 2
or eax, 2
imul eax, edx
add eax, ecx
xor ecx, ecx
lea ecx, [esp + 0x40c]
lea edx, [esp + 0xdc]
mov dword [esp], 0
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], edx
call dword [0x44e0bc]
sub esp, 0x18
mov al, byte [esp + 0x5c]
mov byte [esp + 0x1f4], al
mov byte [esp + 0x74], 0xef
mov byte [esp + 0x75], 0x89
mov byte [esp + 0x76], 0x8e
mov byte [esp + 0x77], 0x4f
mov eax, 4
mov byte [esp + eax + 0x74], 0
add eax, 1
cmp eax, 7
jne 0x418124
xor eax, eax
cmp eax, 7
jae 0x41818b
mov cl, byte [esp + eax + 0x74]
mov esi, eax
add esi, 1
mov edx, eax
xor edx, 0xffffffff
or edx, 0x5a5f56a2
add edx, esi
mov edi, edx
and edi, 0xfffffffd
mov esi, edx
and esi, 2
xor esi, 2
imul esi, edi
mov edi, edx
and edi, 2
or edx, 2
imul edx, edi
add edx, esi
mov ebx, eax
xor ebx, 0x5a5f56a2
mov esi, ebx
and esi, edx
shl esi, 1
xor ebx, edx
add ebx, esi
xor bl, cl
add bl, 0xd6
mov byte [esp + eax + 0x74], bl
add eax, 1
jmp 0x418133
mov eax, dword [esp + 0x28]
mov dword [eax], 0x1955e5cc
jmp 0x41871c
mov eax, dword [esp + 0x28]
mov dword [eax], 0x7a40ec04
jmp 0x41871c
mov eax, dword [esp + 0x28]
mov dword [eax], 0x8b0b7834
jmp 0x41871c
add byte [ebx - 0x38d7dbbc], cl
add al, cl
je 0x418326
lodsd eax, dword [esi]
jmp 0x41871c
jae 0x4182e3
out 0x1f, eax
mov esi, 0x8b0e8245
inc esp
and al, 0x28
mov dword [eax], 0xbebf6889
jmp 0x41871c
mov ebx, 0x28531fd7
add edx, dword [ecx + 0x7e]
mov al, byte [0xe95202f4]
into
sub eax, 0x24448bde
sub bh, al
add byte [edi], bl
shr byte [eax - 0x3b], 0xe9
add eax, dword [eax]
add eax, dword [eax]
add byte [edx - 0x77abdbbc], cl
test byte [esp + ecx], ah
add al, byte [eax]
add dh, al
inc esp
and al, 0x30
scasb al, byte es:[edi]
mov byte [esp + 0x31], 0xa7
mov byte [esp + 0x32], 0x32
mov eax, 3
mov byte [esp + eax + 0x30], 0
add eax, 1
cmp eax, 4
jne 0x418348
xor eax, eax
cmp eax, 4
jae 0x4183a0
movzx esi, byte [esp + eax + 0x30]
mov edx, eax
add edx, 0x8c
mov ecx, eax
add ecx, 0x8c
mov edi, eax
add edi, 0x8c
or ecx, edi
and ecx, esi
mov edi, eax
add edi, 0x8c
and edx, edi
or edx, esi
xor ecx, edx
add cl, 0x44
mov byte [esp + eax + 0x30], cl
mov ecx, eax
shl ecx, 1
and ecx, 2
xor eax, 1
add eax, ecx
jmp 0x418357
mov eax, dword [esp + 0x2c]
lea ecx, [esp + 0x30]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.004018c0
mov al, byte [esp + 0x50]
mov byte [esp + 0x214], al
mov byte [esp + 0x98], 0xa9
mov byte [esp + 0x99], 0xdf
mov byte [esp + 0x9a], 0x4e
mov eax, 3
mov byte [esp + eax + 0x98], 0
add eax, 1
cmp eax, 8
jne 0x4183dc
xor eax, eax
cmp eax, 8
jae 0x418472
movzx ecx, byte [esp + eax + 0x98]
mov edx, eax
and edx, 0xc2acc710
mov edi, eax
and edi, 0xc2acc710
mov esi, eax
and esi, 2
xor esi, 2
imul esi, edi
mov edi, eax
and edi, 2
or edx, 2
imul edx, edi
add edx, esi
mov esi, eax
xor esi, 0xc2acc712
add esi, edx
mov edi, ecx
xor edi, 0xffffffff
mov edx, esi
or edx, edi
xor esi, 0xffffffff
or ecx, esi
add edx, ecx
mov ecx, 0xa3
sub ecx, edx
mov esi, edx
shl esi, 1
and esi, 2
xor esi, 2
and ecx, 0xfe
and edx, 1
or ecx, edx
add ecx, esi
mov byte [esp + eax + 0x98], cl
mov ecx, eax
shl ecx, 1
or ecx, 1
sub ecx, eax
mov eax, ecx
jmp 0x4183ee
mov eax, dword [esp + 0x2c]
lea ecx, [esp + 0x98]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.004018c0
mov eax, dword [esp + 0x38]
mov dword [esp], eax
call fcn.00418b60
mov eax, dword [esp + 0x28]
mov dword [eax], 0x9c6ee5f5
jmp 0x41871c
cmp dh, dl
or eax, 0x24848bc5
push esp
add eax, dword [eax]
add byte [ecx + 0x9e183c1], cl
shl ecx, 1
xor eax, 9
add eax, ecx
xor eax, dword [esp + 0x140]
mov ecx, dword [esp + 0x144]
mov edx, eax
xor edx, 0xffffffff
and edx, ecx
xor ecx, 0xffffffff
and eax, ecx
sub eax, edx
shr eax, 1
mov ecx, 2
mul ecx
seto cl
xor edx, edx
mov ecx, 0xffffffff
test dl, 1
jne 0x418517
mov ecx, eax
mov dword [esp], ecx
call fcn.004083f0
mov cl, byte [esp + 0x4c]
mov byte [esp + 0x21c], cl
mov byte [esp + 0x7c], 0xce
mov byte [esp + 0x7d], 0x7f
mov byte [esp + 0x7e], 0xc9
mov byte [esp + 0x7f], 0x71
mov byte [esp + 0x80], 0xce
mov byte [esp + 0x81], 0x73
mov byte [esp + 0x82], 0xd6
mov byte [esp + 0x83], 0x75
mov byte [esp + 0x84], 0xc8
mov byte [esp + 0x85], 0x77
mov byte [esp + 0x86], 0xca
mov byte [esp + 0x87], 0x49
mov byte [esp + 0x88], 0xbd
mov byte [esp + 0x89], 0x4b
mov byte [esp + 0x8a], 0xb8
mov byte [esp + 0x8b], 0x4d
mov byte [esp + 0x8c], 0x4c
mov byte [esp + 0x8d], 0x4f
mov ecx, 0x12
mov byte [esp + ecx + 0x7c], 0
add ecx, 1
cmp ecx, 0x18
jne 0x4185b3
xor ecx, ecx
cmp ecx, 0x18
jae 0x41861d
movzx edx, byte [esp + ecx + 0x7c]
mov esi, ecx
add esi, 0x95
mov edi, edx
add edi, 1
mov ebx, edx
xor ebx, 0xffffffff
or esi, ebx
add esi, edi
mov ebx, esi
and ebx, 0xfd
mov edi, esi
or edi, 0xfd
add edi, 1
imul edi, ebx
mov ebx, esi
and ebx, 2
or esi, 2
imul esi, ebx
sub edi, esi
mov ebx, ecx
add ebx, 0x95
add ebx, edx
add ebx, edi
add bl, 0x17
mov byte [esp + ecx + 0x7c], bl
add ecx, 1
jmp 0x4185c2
lea ecx, [esp + 0x7c]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.00409ee0
mov ecx, eax
add ecx, 2
mov word [eax], 0x20
add ecx, 2
mov word [eax + 2], 0x22
mov eax, dword [esp + 0x38]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00409ee0
mov word [eax], 0x22
mov eax, dword [esp + 0x28]
mov dword [eax], 0x97d797a
jmp 0x41871c
xchg esi, eax
inc esi
mov eax, dword cs:[0x91f8dc6d]
pop ecx
cmp al, byte [ecx - 0x1d]
std
push es
imul esp, dword [edx], 0x2824448b
mov dword [eax], 0xb0c71196
jmp 0x4141c7