Function at 0x4139d0
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, 0x988
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.00401c30
mov dword [esp + 0x108], eax
mov dword [esp + 0x32c], 0x7c43ca16
lea eax, [esp + 0x32c]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x32c]
mov ecx, eax
sub ecx, 0x8008be85
je 0x4176f3
jmp 0x413a1e
mov ecx, eax
sub ecx, 0x82f960de
je 0x415c45
jmp 0x413a2e
mov ecx, eax
sub ecx, 0x830ff146
je 0x417d30
jmp 0x413a3e
mov ecx, eax
sub ecx, 0x83468e2f
je 0x4152bf
jmp 0x413a4e
mov ecx, eax
sub ecx, 0x8373399e
je 0x417524
jmp 0x413a5e
mov ecx, eax
sub ecx, 0x847fd03b
je 0x414aad
jmp 0x413a6e
mov ecx, eax
sub ecx, 0x84ba211b
je 0x415a00
jmp 0x413a7e
mov ecx, eax
sub ecx, 0x8871f4a4
je 0x4163f0
jmp 0x413a8e
mov ecx, eax
sub ecx, 0x89d5e7ba
je 0x4152a4
jmp 0x413a9e
mov ecx, eax
sub ecx, 0x89f2732d
je 0x4150f5
jmp 0x413aae
mov ecx, eax
sub ecx, 0x8ac52d42
je 0x415842
jmp 0x413abe
mov ecx, eax
sub ecx, 0x8c0b97f3
je 0x41518e
jmp 0x413ace
mov ecx, eax
sub ecx, 0x8c5c9a6d
je 0x415113
jmp 0x413ade
mov ecx, eax
sub ecx, 0x8ccea435
je 0x416130
jmp 0x413aee
mov ecx, eax
sub ecx, 0x8ce28a56
je 0x41655c
jmp 0x413afe
mov ecx, eax
sub ecx, 0x8d6951df
je 0x416e71
jmp 0x413b0e
mov ecx, eax
sub ecx, 0x8e211ffc
je 0x4177f6
jmp 0x413b1e
mov ecx, eax
sub ecx, 0x8f1bd405
je 0x416fb1
jmp 0x413b2e
mov ecx, eax
sub ecx, 0x8ff6fc97
je 0x415f5b
jmp 0x413b3e
mov ecx, eax
sub ecx, 0x93021fab
je 0x416512
jmp 0x413b4e
mov ecx, eax
sub ecx, 0x93fd7403
je 0x418097
jmp 0x413b5e
mov ecx, eax
sub ecx, 0x94943cba
je 0x41786a
jmp 0x413b6e
mov ecx, eax
sub ecx, 0x94bfcae0
je 0x417081
jmp 0x413b7e
mov ecx, eax
sub ecx, 0x96c3a044
je 0x417c25
jmp 0x413b8e
mov ecx, eax
sub ecx, 0x9718a439
je 0x416c07
jmp 0x413b9e
mov ecx, eax
sub ecx, 0x9858f712
je 0x41775f
jmp 0x413bae
mov ecx, eax
sub ecx, 0x99c8d963
je 0x4177d8
jmp 0x413bbe
mov ecx, eax
sub ecx, 0x9b125710
je 0x41618e
jmp 0x413bce
mov ecx, eax
sub ecx, 0x9b9a0a06
je 0x4180d4
jmp 0x413bde
mov ecx, eax
sub ecx, 0x9c28e1fb
je 0x416f77
jmp 0x413bee
mov ecx, eax
sub ecx, 0xa009d321
je 0x415bd5
jmp 0x413bfe
mov ecx, eax
sub ecx, 0xa2f944c0
je 0x415249
jmp 0x413c0e
mov ecx, eax
sub ecx, 0xa49a1261
je 0x417cf6
jmp 0x413c1e
mov ecx, eax
sub ecx, 0xa70aae12
je 0x4182cd
jmp 0x413c2e
mov ecx, eax
sub ecx, 0xa87d3281
je 0x416435
jmp 0x413c3e
mov ecx, eax
sub ecx, 0xa88d8f7b
je 0x4169d7
jmp 0x413c4e
mov ecx, eax
sub ecx, 0xa9e94b33
je 0x41725e
jmp 0x413c5e
mov ecx, eax
sub ecx, 0xad2fdacd
je 0x415708
jmp 0x413c6e
mov ecx, eax
sub ecx, 0xaea0b65e
je 0x415264
jmp 0x413c7e
mov ecx, eax
sub ecx, 0xb0b0e590
je 0x416f0b
jmp 0x413c8e
mov ecx, eax
sub ecx, 0xb1e1a5f7
je 0x416503
jmp 0x413c9e
mov ecx, eax
sub ecx, 0xb282027b
je 0x415b12
jmp 0x413cae
mov ecx, eax
sub ecx, 0xb4b16370
je 0x417c6b
jmp 0x413cbe
mov ecx, eax
sub ecx, 0xb540b390
je 0x416a63
jmp 0x413cce
mov ecx, eax
sub ecx, 0xb7ca01fe
je 0x418285
jmp 0x413cde
mov ecx, eax
sub ecx, 0xbad8ae0e
je 0x4165d9
jmp 0x413cee
mov ecx, eax
sub ecx, 0xbe657d8d
je 0x41476b
jmp 0x413cfe
mov ecx, eax
sub ecx, 0xbfc000ce
je 0x4152ce
jmp 0x413d0e
mov ecx, eax
sub ecx, 0xbfc15fe7
je 0x4153e1
jmp 0x413d1e
mov ecx, eax
sub ecx, 0xc29c3e77
je 0x416659
jmp 0x413d2e
mov ecx, eax
sub ecx, 0xc2d96187
je 0x415f11
jmp 0x413d3e
mov ecx, eax
sub ecx, 0xc34a2ffa
je 0x415f77
jmp 0x413d4e
mov ecx, eax
sub ecx, 0xc3cb5dde
je 0x41534c
jmp 0x413d5e
mov ecx, eax
sub ecx, 0xc64725eb
je 0x414f77
jmp 0x413d6e
mov ecx, eax
sub ecx, 0xc6b5235a
je 0x4184b6
jmp 0x413d7e
mov ecx, eax
sub ecx, 0xc8d2f104
je 0x415809
jmp 0x413d8e
mov ecx, eax
sub ecx, 0xc937ad42
je 0x415748
jmp 0x413d9e
mov ecx, eax
sub ecx, 0xca3e3666
je 0x415305
jmp 0x413dae
mov ecx, eax
sub ecx, 0xcba4f9a6
je 0x416f68
jmp 0x413dbe
mov ecx, eax
sub ecx, 0xcc4c4a10
je 0x415122
jmp 0x413dce
mov ecx, eax
sub ecx, 0xcd6156d1
je 0x417c44
jmp 0x413dde
mov ecx, eax
sub ecx, 0xce8d7419
je 0x4149ce
jmp 0x413dee
mov ecx, eax
sub ecx, 0xce93d183
je 0x416e80
jmp 0x413dfe
mov ecx, eax
sub ecx, 0xd061611c
je 0x4156f9
jmp 0x413e0e
mov ecx, eax
sub ecx, 0xd073642c
je 0x416e35
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x19b5a110
jmp 0x4184c8
mov al, byte [esp + 0x190]
mov byte [esp + 0x1f8], al
mov byte [esp + 0x3a8], 0x7b
mov byte [esp + 0x3a9], 0x1f
mov eax, 2
mov byte [esp + eax + 0x3a8], 0
add eax, 1
cmp eax, 6
jne 0x4149f1
xor eax, eax
cmp eax, 6
jae 0x414a59
movzx ecx, byte [esp + eax + 0x3a8]
mov esi, eax
add esi, 0xd78a4f05
mov edx, eax
add edx, 5
or edx, esi
and edx, ecx
mov esi, edx
and esi, 2
xor esi, 2
mov edi, edx
and edi, 0xfd
imul edi, esi
mov esi, edx
and esi, 2
or edx, 2
imul edx, esi
add edx, edi
mov ebx, eax
add ebx, 5
add ebx, ecx
sub ebx, edx
add bl, 0xe7
mov byte [esp + eax + 0x3a8], bl
add eax, 1
jmp 0x414a03
mov eax, dword [esp + 0x34]
lea ecx, [esp + 0x3a8]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], 3
call fcn.00401f50
cmp eax, 0
setne al
mov cl, al
xor cl, 0xff
xor al, 0xff
and cl, al
or cl, 0
xor cl, 0xff
xor cl, 0xff
and cl, 1
mov eax, 0xf8ff3dcd
test cl, 1
jne 0x414aa2
mov eax, 0x1bc29044
mov ecx, dword [esp + 0x2c]
mov dword [ecx], eax
jmp 0x4184c8
mov eax, dword [esp + 0x2c]
mov dword [eax], 0xf8ff3dcd
jmp 0x4184c8
mov eax, 0x43f4d0f7
test byte [esp + 0x7a], 1
jne 0x414f88
mov eax, 0x5447b712
mov ecx, dword [esp + 0x2c]
mov dword [ecx], eax
jmp 0x4184c8
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x7c274c8d
jmp 0x4184c8
mov eax, dword [esp + 0x2c]
mov dword [eax], 0xcc4c4a10
jmp 0x4184c8
mov eax, dword [esp + 0x30]
mov dword [esp], eax
call fcn.0043bab0
mov eax, dword [esp + 0x2c]
mov dword [eax], 0xc3cb5dde
mov eax, dword [esp + 0x58]
mov dword [esp + 0x340], 4
mov dword [esp + 0x33c], eax
jmp 0x4184c8
mov eax, dword [0x44cd18]
mov ecx, dword [esp + 0x188]
mov edx, dword [esp + 0x118]
mov esi, dword [esp + 0x58]
mov edi, dword [esp + 0x114]
xor ebx, ebx
lea ebx, [esp + 0x188]
mov dword [esp], 0
mov dword [esp + 4], esi
mov dword [esp + 8], edi
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], ebx
call eax
sub esp, 0x18
mov ecx, 0x14a6f17d
cmp eax, 0
jge 0x4151e4
mov ecx, 0x35069f36
mov eax, dword [esp + 0x2c]
mov dword [eax], ecx
jmp 0x4184c8
mov eax, dword [esp + 0x58]
mov dword [esp], eax
call fcn.004086f0
mov eax, dword [esp + 0x2c]
mov dword [eax], 0xaea0b65e
jmp 0x4184c8
mov eax, dword [esp + 0x30]
mov dword [esp], eax
call fcn.0043bab0
mov eax, dword [esp + 0x2c]
mov dword [eax], 0xca3e3666
mov eax, dword [esp + 0x58]
mov dword [esp + 0x338], 4
mov dword [esp + 0x334], eax
jmp 0x4184c8
mov eax, dword [esp + 0x58]
mov dword [esp], eax
call fcn.004086f0
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x83468e2f
jmp 0x4184c8
mov eax, dword [esp + 0x2c]
mov dword [eax], 0xbfc000ce
jmp 0x4184c8
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x3763935b
jmp 0x4184c8
mov eax, dword [esp + 0x334]
mov ecx, dword [esp + 0x338]
mov dword [esp + 0x3ec], eax
mov dword [esp + 0x3f0], ecx
mov eax, dword [esp + 0x2c]
mov dword [eax], 0xc3cb5dde
mov eax, dword [esp + 0x3f0]
mov ecx, dword [esp + 0x3ec]
mov dword [esp + 0x340], eax
mov dword [esp + 0x33c], ecx
jmp 0x4184c8
mov eax, dword [esp + 0x33c]
mov ecx, dword [esp + 0x340]
mov dword [esp + 0x374], eax
mov dword [esp + 0x378], ecx
mov eax, 0x4a016fc0
cmp dword [esp + 0x378], 0
je 0x41537c
mov eax, 0x7253a3a0
mov ecx, dword [esp + 0x2c]
mov dword [ecx], eax
mov eax, dword [esp + 0x378]
mov ecx, dword [esp + 0x374]
mov edx, dword [esp + 0x374]
mov dword [esp + 0xec], eax
mov dword [esp + 0xe8], ecx
mov dword [esp + 0x34c], edx
jmp 0x4184c8
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x64a7c036
lea eax, [esp + 0x544]
mov dword [esp + 0x348], eax
mov dword [esp + 0x344], 0
jmp 0x4184c8
mov eax, dword [esp + 0x2c]
mov dword [eax], 0xad2fdacd
jmp 0x4184c8
mov eax, dword [esp + 0x30]
mov dword [esp], eax
call fcn.0043bab0
mov eax, dword [esp + 0x2c]
mov dword [eax], 0xfc9a8b93
jmp 0x4184c8
mov eax, dword [esp + 0x2c]
mov dword [eax], 0xf1eae4d1
jmp 0x4184c8
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x30fd82d0
jmp 0x4184c8
mov eax, dword [esp + 0x2c]
mov dword [eax], 0xce0f173
jmp 0x4184c8
mov al, byte [esp + 0x150]
mov byte [esp + 0x228], al
mov byte [esp + 0x2fc], 0x56
mov byte [esp + 0x2fd], 0x6b
mov byte [esp + 0x2fe], 0xe
mov byte [esp + 0x2ff], 0x69
mov byte [esp + 0x300], 4
mov byte [esp + 0x301], 0x6f
mov byte [esp + 0x302], 2
mov byte [esp + 0x303], 0x6d
mov byte [esp + 0x304], 0x6c
mov byte [esp + 0x305], 0x73
mov eax, 0xa
mov byte [esp + eax + 0x2fc], 0
add eax, 1
cmp eax, 0xd
jne 0x415a63
xor eax, eax
cmp eax, 0xd
jae 0x415ac1
movzx edx, byte [esp + eax + 0x2fc]
mov ecx, eax
add ecx, 0xaafe6f67
mov esi, ecx
and esi, edx
mov ebx, esi
and ebx, 0xfd
mov edi, esi
and edi, 2
xor edi, 2
imul edi, ebx
mov ebx, esi
and ebx, 2
or esi, 2
imul esi, ebx
add esi, edi
add ecx, edx
sub ecx, esi
add cl, 0xfd
mov byte [esp + eax + 0x2fc], cl
add eax, 1
jmp 0x415a75
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0x2fc]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.004188c0
mov eax, dword [esp + 0x2c]
mov dword [eax], 0xa009d321
jmp 0x4184c8
mov al, byte [esp + 0x64]
mov byte [esp + 0x230], al
mov byte [esp + 0x4c], 0xae
mov byte [esp + 0x4d], 0x9b
mov byte [esp + 0x4e], 0x6a
mov byte [esp + 0x4f], 0x99
mov byte [esp + 0x50], 0x65
mov byte [esp + 0x51], 0xa7
mov byte [esp + 0x52], 0x99
mov byte [esp + 0x53], 0xa5
mov byte [esp + 0x54], 0xa4
mov byte [esp + 0x55], 0xa3
mov eax, 0xa
mov byte [esp + eax + 0x4c], 0
add eax, 1
cmp eax, 0xc
jne 0x415b54
xor eax, eax
cmp eax, 0xc
jae 0x415ba3
movzx edx, byte [esp + eax + 0x4c]
mov ecx, eax
add ecx, 0xd846465b
mov esi, ecx
and esi, edx
shl esi, 1
add ecx, edx
sub ecx, esi
mov edx, ecx
xor edx, 0xc8
shl ecx, 1
and ecx, 0x6e
sub ecx, edx
add cl, 1
mov byte [esp + eax + 0x4c], cl
mov ecx, eax
shl ecx, 1
and ecx, 2
xor eax, 1
add eax, ecx
jmp 0x415b63
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0x4c]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.004188c0
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x4d32f7ac
jmp 0x4184c8
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x6b6766e3
mov eax, dword [esp + 0x48]
mov dword [esp + 0xe4], 0
mov dword [esp + 0xe0], eax
jmp 0x4184c8
mov eax, 0x4a016fc0
test byte [esp + 0x7e], 1
jne 0x415c56
mov eax, 0x7253a3a0
mov ecx, dword [esp + 0x2c]
mov dword [ecx], eax
mov eax, dword [esp + 0x384]
mov ecx, dword [esp + 0x380]
mov edx, dword [esp + 0x380]
mov dword [esp + 0xec], eax
mov dword [esp + 0xe8], ecx
mov dword [esp + 0x34c], edx
jmp 0x4184c8
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x1a2416f9
jmp 0x4184c8
mov eax, 0xc34a2ffa
cmp dword [esp + 0x3c], 1
je 0x415f6c
mov eax, 0x368ac800
mov ecx, dword [esp + 0x2c]
mov dword [ecx], eax
jmp 0x4184c8
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x1b551b03
jmp 0x4184c8
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x180c9e00
jmp 0x4184c8
mov eax, dword [esp + 0x354]
mov dword [esp + 0x124], eax
cmp dword [esp + 0xbc], 0
setne al
and al, 1
mov byte [esp + 0x47], al
mov eax, 0xdb698f3e
test byte [esp + 0x47], 1
jne 0x4161be
mov eax, 0x7ef96b75
mov ecx, dword [esp + 0x2c]
mov dword [ecx], eax
mov dword [esp + 0x358], 0
jmp 0x4184c8
mov eax, dword [esp + 0x40]
mov dword [esp], eax
call fcn.004086f0
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x4b6de902
jmp 0x4184c8
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x13e51a51
jmp 0x4184c8
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x93021fab
jmp 0x4184c8
mov eax, dword [esp + 0x12c]
mov word [eax], 0x2c
mov eax, dword [esp + 0x390]
mov ecx, dword [esp + 0x128]
mov edx, dword [esp + 0xbc]
xor esi, esi
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0
call fcn.0040afb0
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x8ce28a56
jmp 0x4184c8
mov eax, dword [esp + 0x2c]
mov dword [eax], 0xcb20c0a
jmp 0x4184c8
mov eax, 0x4bcc3012
test byte [esp + 0x7f], 1
jne 0x4165ea
mov eax, 0xa88d8f7b
mov ecx, dword [esp + 0x2c]
mov dword [ecx], eax
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0xf8], ecx
mov dword [esp + 0xf4], eax
mov dword [esp + 0xf0], 0
jmp 0x4184c8
mov ecx, dword [esp + 0x41c]
mov eax, 0xffffffff
test byte [esp + 0x80], 1
jne 0x416671
mov eax, ecx
mov dword [esp], eax
call fcn.004086e0
mov dword [esp + 0x394], eax
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x27948e1b
jmp 0x4184c8
mov eax, dword [esp + 0xf0]
mov ecx, dword [esp + 0xf4]
mov edx, dword [esp + 0xf8]
mov dword [esp + 0x420], eax
mov dword [esp + 0x424], ecx
mov dword [esp + 0x428], edx
mov eax, dword [esp + 0x2c]
mov dword [eax], 0xdd7f4c9f
jmp 0x4184c8
mov eax, dword [esp + 0x360]
mov ecx, dword [esp + 0x364]
mov edx, dword [esp + 0x368]
mov esi, dword [esp + 0x36c]
mov dword [esp + 0x42c], eax
mov dword [esp + 0x430], ecx
mov dword [esp + 0x434], edx
mov eax, 0x4b47a035
cmp esi, 0
je 0x416aa3
mov eax, 0x6bf205b
mov ecx, dword [esp + 0x2c]
mov dword [ecx], eax
mov eax, dword [esp + 0x434]
mov ecx, dword [esp + 0x430]
mov edx, dword [esp + 0x42c]
mov dword [esp + 0x104], eax
mov dword [esp + 0x100], ecx
mov dword [esp + 0xfc], edx
jmp 0x4184c8
mov eax, dword [esp + 0x2c]
mov dword [eax], 0xd9ce46a1
jmp 0x4184c8
mov eax, dword [esp + 0x2c]
mov dword [eax], 0xce93d183
jmp 0x4184c8
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x4b47a035
mov eax, dword [esp + 0x398]
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0x104], ecx
mov dword [esp + 0x100], 0
mov dword [esp + 0xfc], eax
jmp 0x4184c8
mov eax, 0xf3b704e6
cmp dword [esp + 0xc4], 2
jl 0x416f1f
mov eax, 0x4dbb2470
mov ecx, dword [esp + 0x2c]
mov dword [ecx], eax
jmp 0x4184c8
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x9c28e1fb
jmp 0x4184c8
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x34e128f8
jmp 0x4184c8
call fcn.00418930
lea edi, [esp + 0x45c]
xor eax, eax
mov ecx, 0x11
rep stosd dword es:[edi], eax
mov dword [esp + 0x45c], 0x44
call fcn.00418930
call fcn.00418930
mov eax, dword [0x44cd10]
mov dword [esp], eax
mov dword [esp + 4], 0xef6ed546
call fcn.004400a0
mov esi, eax
test esi, esi
setne al
call fcn.00418930
call fcn.00418930
mov eax, dword [esp + 0xc0]
mov ecx, dword [esp + 0xa0]
xor edx, edx
lea edx, [esp + 0x45c]
lea edi, [esp + 0x44c]
mov dword [esp], eax
mov dword [esp + 4], ecx
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], edx
mov dword [esp + 0x24], edi
call esi
sub esp, 0x28
cmp eax, 0
setne al
and al, 1
mov byte [esp + 0x82], al
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x94bfcae0
jmp 0x4184c8
mov eax, 0x6faec3f1
test byte [esp + 0x82], 1
jne 0x417095
mov eax, 0x46fc7612
mov ecx, dword [esp + 0x2c]
mov dword [ecx], eax
jmp 0x4184c8
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x2b1048d8
jmp 0x4184c8
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x6b43d476
jmp 0x4184c8
mov eax, dword [esp + 0x2c]
mov dword [eax], 0xd7c161cd
jmp 0x4184c8
mov eax, dword [esp + 0xc0]
mov dword [esp], eax
call fcn.004086f0
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x20557fed
jmp 0x4184c8
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x3571c6eb
jmp 0x4184c8
mov eax, dword [esp + 0x10c]
mov ecx, eax
and ecx, 1
or eax, 1
add eax, ecx
mov dword [esp + 0x438], eax
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x13e36fc3
jmp 0x4184c8
mov ebp, 0xb99a99a8
mov byte [0x448a51fd], al
and al, 0x70
mov byte [esp + 0x1fc], al
mov byte [esp + 0xac], 0x4f
mov byte [esp + 0xad], 0xdb
mov eax, 2
mov byte [esp + eax + 0xac], 0
add eax, 1
cmp eax, 5
jne 0x417892
xor eax, eax
cmp eax, 5
jae 0x417947
movzx edi, byte [esp + eax + 0xac]
mov dword [esp + 0xb8], eax
mov ecx, dword [esp + 0xb8]
add ecx, 0x3aa61aaf
mov edx, edi
and edx, 0x31
xor edx, 0x9d56b631
mov esi, edi
xor esi, 0x9d56b631
or edi, 0xce
and edi, esi
mov esi, 0xc559e550
sub esi, dword [esp + 0xb8]
and esi, 0x90548200
mov ebx, edi
xor ebx, 0xffffffff
mov eax, edx
and eax, ebx
mov ebx, edx
xor ebx, edi
add edx, ebx
sub edx, eax
and ecx, 0x6fab7dff
or esi, ecx
xor esi, edx
xor esi, 0xf2fdcbce
mov ecx, 0xdac17a93
sub ecx, esi
mov eax, ecx
shl eax, 1
and eax, 2
xor ecx, 1
add ecx, eax
mov eax, dword [esp + 0xb8]
mov byte [esp + eax + 0xac], cl
mov eax, dword [esp + 0xb8]
add eax, 1
jmp 0x4178a4
mov eax, dword [esp + 0x34]
lea ecx, [esp + 0xac]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.004018c0
mov dword [esp + 0x3d8], eax
mov al, byte [esp + 0x6c]
mov byte [esp + 0x204], al
mov byte [esp + 0x90], 0x8e
mov byte [esp + 0x91], 0x9f
mov byte [esp + 0x92], 0x2a
mov eax, 3
mov byte [esp + eax + 0x90], 0
add eax, 1
cmp eax, 6
jne 0x41798d
xor eax, eax
cmp eax, 6
jae 0x417a60
movzx edx, byte [esp + eax + 0x90]
mov dword [esp + 0x3c8], edx
mov ecx, 0x913ff278
sub ecx, eax
or ecx, edx
mov dword [esp + 0x3d4], ecx
mov esi, 0x913ff278
sub esi, eax
mov ecx, 0x913ff278
sub ecx, eax
mov edi, eax
add edi, 0x6ec00d87
mov edx, eax
add edx, 0x6ec00d87
mov dword [esp + 0x328], edx
mov ebx, edi
and ebx, 0x6659c33
and esi, 0xf99a63cc
mov edx, dword [esp + 0x328]
and edx, 0x6659c33
and ecx, 0xf99a63cc
or ebx, esi
or edx, ecx
xor ebx, edx
or edi, dword [esp + 0x328]
xor ebx, 0xffffffff
and edi, ebx
mov edx, edi
xor edx, 0xffffffff
mov esi, dword [esp + 0x3c8]
mov ecx, esi
or ecx, edx
sub edi, esi
add ecx, edi
mov esi, dword [esp + 0x3d4]
mov edx, esi
or edx, ecx
add ecx, esi
xor ecx, 0xffffffff
add edx, ecx
add dl, 0x5d
mov byte [esp + eax + 0x90], dl
mov ecx, eax
shl ecx, 1
and ecx, 2
xor eax, 1
add eax, ecx
jmp 0x41799f
mov eax, dword [esp + 0x34]
lea ecx, [esp + 0x90]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.004019f0
fstp st(0)
mov al, byte [esp + 0x68]
mov byte [esp + 0x20c], al
mov byte [esp + 0xa4], 0x2d
mov byte [esp + 0xa5], 0x89
mov eax, 2
mov byte [esp + eax + 0xa4], 0
add eax, 1
cmp eax, 8
jne 0x417a99
xor eax, eax
cmp eax, 8
jae 0x417b04
movzx edx, byte [esp + eax + 0xa4]
mov ecx, eax
add ecx, 0x8fd644a2
mov esi, 0x5d
sub esi, eax
and esi, edx
xor edx, 0xffffffff
and ecx, edx
or ecx, esi
mov edx, ecx
and edx, 0x725d24d9
xor edx, 0x725d24d9
and ecx, 0x8da2db26
sub ecx, edx
mov edx, ecx
shl edx, 1
and edx, 2
xor ecx, 1
add ecx, 0xae
add ecx, edx
mov byte [esp + eax + 0xa4], cl
add eax, 1
jmp 0x417aab
mov eax, dword [esp + 0x34]
lea ecx, [esp + 0xa4]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.004019f0
fstp st(0)
lea eax, [esp + 0x584]
xor ecx, ecx
mov dword [esp], eax
mov dword [esp + 4], 0x400
mov eax, dword [esp + 0x3d8]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0
call fcn.0040afb0
lea eax, [esp + 0x584]
lea ecx, [esp + 0x30]
lea edx, [esp + 0xc8]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call fcn.0040b6e0
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x524cf98e
jmp 0x4184c8
mov dword [eax], 0x59a82ae4
jmp 0x4184c8
add dword [ebp - 0x64], 0x63db3016
int1
aam 0xf7
loop 0x417c1a
out 0x3b, al
mov eax, dword [esp + 0x2c]
mov dword [eax], 0xf9a93d6e
jmp 0x4184c8
shr byte [ebx], cl
js 0x417c56
and byte [edi], dl
pop ds
sbb ah, byte [eax - 0x748447f9]
inc esp
and al, 0x30
mov dword [esp], eax
call fcn.0043bab0
and al, 0xe8
push esp
add al, byte ds:[eax]
mov eax, dword [esp + 0x2c]
mov dword [eax], 0xad2fdacd
jmp 0x4184c8
jmp 0xb6612a54
rcr dword [ecx - 0x5d], 0xd8
mov eax, dword [esp + 0x48]
mov dword [esp], eax
call fcn.004086f0
mov eax, dword [esp + 0x2c]
mov dword [eax], 0xf8111b1d
jmp 0x4184c8
dec esi
add eax, 0x847dde76
mov cl, 0x72
adc eax, 0x6d696890
push esp
mov ecx, 0x24448a6e
mov byte fs:[esp + 0x22c], al
mov byte [esp + 0x4c], 0xae
mov byte [esp + 0x4d], 0x9b
mov byte [esp + 0x4e], 0x6a
mov byte [esp + 0x4f], 0x99
mov byte [esp + 0x50], 0x65
mov byte [esp + 0x51], 0xa7
mov byte [esp + 0x52], 0x99
mov byte [esp + 0x53], 0xa5
mov byte [esp + 0x54], 0xa4
mov byte [esp + 0x55], 0xa3
mov eax, 0xa
mov byte [esp + eax + 0x4c], 0
add eax, 1
cmp eax, 0xc
jne 0x417d82
xor eax, eax
cmp eax, 0xc
jae 0x417dd1
movzx edx, byte [esp + eax + 0x4c]
mov ecx, eax
add ecx, 0xd846465b
mov esi, ecx
and esi, edx
shl esi, 1
add ecx, edx
sub ecx, esi
mov edx, ecx
xor edx, 0xc8
shl ecx, 1
and ecx, 0x6e
sub ecx, edx
add cl, 1
mov byte [esp + eax + 0x4c], cl
mov ecx, eax
shl ecx, 1
and ecx, 2
xor eax, 1
add eax, ecx
jmp 0x417d91
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0x4c]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.004188c0
mov eax, dword [esp + 0x2c]
mov dword [eax], 0xb282027b
jmp 0x4184c8
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0
call fcn.0040afb0
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x93021fab
jmp 0x4184c8
sub al, 0xbe
sahf
sti
imul esi, dword [eax + ebp*8 + 0x41], 0x2c24448b
mov dword [eax], 0x4c193632
jmp 0x4184c8
and eax, dword [edi + 0x58]
xchg edi, eax
jecxz 0x418077
mov ah, 0xcc
invalid
sbb al, byte [esi]
fcomp qword [ebp - 0x39fcf9bb]
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x5cdac259
jmp 0x4184c8
xor eax, 0x87ddad38
jl 0x418305
sub esp, dword [0x9f1a046e]
jmp 0xe898f6c1
mov byte [esp + 0x1ac], 0x97
mov byte [esp + 0x1ad], 0x96
mov byte [esp + 0x1ae], 0x95
mov byte [esp + 0x1af], 0x94
mov eax, 4
mov byte [esp + eax + 0x1ac], 0
add eax, 1
cmp eax, 8
jne 0x41832a
xor eax, eax
cmp eax, 8
jae 0x41835e
mov cl, byte [esp + eax + 0x1ac]
mov dl, al
add dl, 0xa4
xor dl, cl
add dl, 0xcc
mov byte [esp + eax + 0x1ac], dl
add eax, 1
jmp 0x41833c
mov edi, dword [esp + 0x1ac]
xor ebx, ebx
cmp ebx, dword [0x44cd1c]
jb 0x418371
jmp 0x4183c1
mov eax, dword [0x44cd20]
cmp dword [eax + ebx*8], 0x1b6183f2
sete cl
mov byte [esp + 0x77], cl
test cl, 1
jne 0x41838b
jmp 0x4183b3
mov eax, dword [eax + ebx*8 + 4]
cmp eax, edi
je 0x4183b3
mov ecx, dword [0x44cd24]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 4
mov dword [esp + 0xc], esi
call fcn.0043e470
jmp 0x4183b3
test byte [esp + 0x77], 1
je 0x4183bc
jmp 0x4183c1
add ebx, 1
jmp 0x418367
mov esi, dword [esp + 0x43c]
mov al, byte [esp + 0x19c]
mov byte [esp + 0x27c], al
mov byte [esp + 0x1a0], 0x97
mov byte [esp + 0x1a1], 0x96
mov byte [esp + 0x1a2], 0x95
mov byte [esp + 0x1a3], 0x94
mov eax, 4
mov byte [esp + eax + 0x1a0], 0
add eax, 1
cmp eax, 8
jne 0x4183fb
xor eax, eax
cmp eax, 8
jae 0x41842f
mov cl, byte [esp + eax + 0x1a0]
mov dl, al
add dl, 0xa4
xor dl, cl
add dl, 0xcc
mov byte [esp + eax + 0x1a0], dl
add eax, 1
jmp 0x41840d
mov edi, dword [esp + 0x1a0]
xor ebx, ebx
cmp ebx, dword [0x44cd1c]
jb 0x418442
jmp 0x418492
mov eax, dword [0x44cd20]
cmp dword [eax + ebx*8], 0x1b6183f2
sete cl
mov byte [esp + 0x76], cl
test cl, 1
jne 0x41845c
jmp 0x418484
mov eax, dword [eax + ebx*8 + 4]
cmp eax, edi
je 0x418484
mov ecx, dword [0x44cd24]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 4
mov dword [esp + 0xc], esi
call fcn.0043e470
jmp 0x418484
test byte [esp + 0x76], 1
je 0x41848d
jmp 0x418492
add ebx, 1
jmp 0x418438
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x6b43d476
jmp 0x4184c8
or dword [ebx + 0x2e], esi
adc edx, dword [edx - 0x74a8fb4d]
inc esp
and al, 0x2c
mov dword [eax], 0x8e211ffc
jmp 0x413a07