Function at 0x413420
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, 0x958
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.004019e0
mov dword [esp + 0x180], eax
mov dword [esp + 0x30c], 0x327b812d
lea eax, [esp + 0x30c]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x30c]
mov ecx, eax
sub ecx, 0x80139093
je 0x4155b0
jmp 0x41346e
mov ecx, eax
sub ecx, 0x812bd014
je 0x4175c0
jmp 0x41347e
mov ecx, eax
sub ecx, 0x81758c2c
je 0x415930
jmp 0x41348e
mov ecx, eax
sub ecx, 0x821564c6
je 0x417fa7
jmp 0x41349e
mov ecx, eax
sub ecx, 0x835947f1
je 0x416892
jmp 0x4134ae
mov ecx, eax
sub ecx, 0x859572cc
je 0x414d0b
jmp 0x4134be
mov ecx, eax
sub ecx, 0x8599881e
je 0x4163fa
jmp 0x4134ce
mov ecx, eax
sub ecx, 0x85def496
je 0x414b06
jmp 0x4134de
mov ecx, eax
sub ecx, 0x8623a021
je 0x415868
jmp 0x4134ee
mov ecx, eax
sub ecx, 0x871176ad
je 0x41603c
jmp 0x4134fe
mov ecx, eax
sub ecx, 0x873e28c2
je 0x415345
jmp 0x41350e
mov ecx, eax
sub ecx, 0x880230fa
je 0x415921
jmp 0x41351e
mov ecx, eax
sub ecx, 0x88543d0d
je 0x414e5c
jmp 0x41352e
mov ecx, eax
sub ecx, 0x8ac0e088
je 0x416ad5
jmp 0x41353e
mov ecx, eax
sub ecx, 0x8bf6c501
je 0x415f08
jmp 0x41354e
mov ecx, eax
sub ecx, 0x8c31be66
je 0x414f3d
jmp 0x41355e
mov ecx, eax
sub ecx, 0x8f5f965f
je 0x416466
jmp 0x41356e
mov ecx, eax
sub ecx, 0x91b89a5a
je 0x415163
jmp 0x41357e
mov ecx, eax
sub ecx, 0x93530ae3
je 0x414d8b
jmp 0x41358e
mov ecx, eax
sub ecx, 0x9832e257
je 0x415a55
jmp 0x41359e
mov ecx, eax
sub ecx, 0x992bd49f
je 0x4155ef
jmp 0x4135ae
mov ecx, eax
sub ecx, 0x9b46080a
je 0x414af7
jmp 0x4135be
mov ecx, eax
sub ecx, 0x9b47ee3a
je 0x416bfb
jmp 0x4135ce
mov ecx, eax
sub ecx, 0x9bd94ff2
je 0x416847
jmp 0x4135de
mov ecx, eax
sub ecx, 0x9cd1e1cc
je 0x417f7d
jmp 0x4135ee
mov ecx, eax
sub ecx, 0x9e8824e8
je 0x415479
jmp 0x4135fe
mov ecx, eax
sub ecx, 0x9ed0bb83
je 0x416838
jmp 0x41360e
mov ecx, eax
sub ecx, 0xa319c13a
je 0x415370
jmp 0x41361e
mov ecx, eax
sub ecx, 0xa39c5476
je 0x414d7c
jmp 0x41362e
mov ecx, eax
sub ecx, 0xa4a9f1de
je 0x414222
jmp 0x41363e
mov ecx, eax
sub ecx, 0xa640fa58
je 0x4169b6
jmp 0x41364e
mov ecx, eax
sub ecx, 0xa8ef8ee7
je 0x414c77
jmp 0x41365e
mov ecx, eax
sub ecx, 0xaa6f8e84
je 0x4175a5
jmp 0x41366e
mov ecx, eax
sub ecx, 0xabcd0c20
je 0x416a0d
jmp 0x41367e
mov ecx, eax
sub ecx, 0xabd068a7
je 0x414c1d
jmp 0x41368e
mov ecx, eax
sub ecx, 0xacb56df1
je 0x416883
jmp 0x41369e
mov ecx, eax
sub ecx, 0xacbfcc0a
je 0x4175d3
jmp 0x4136ae
mov ecx, eax
sub ecx, 0xacdefe63
je 0x414e77
jmp 0x4136be
mov ecx, eax
sub ecx, 0xae489421
je 0x414831
jmp 0x4136ce
mov ecx, eax
sub ecx, 0xaea86dbf
je 0x414f1e
jmp 0x4136de
mov ecx, eax
sub ecx, 0xaf2b73ec
je 0x414aa4
jmp 0x4136ee
mov ecx, eax
sub ecx, 0xaf49f800
je 0x4172f8
jmp 0x4136fe
mov ecx, eax
sub ecx, 0xaff9c694
je 0x4152f6
jmp 0x41370e
mov ecx, eax
sub ecx, 0xb1cd6f48
je 0x41817f
jmp 0x41371e
mov ecx, eax
sub ecx, 0xb219be52
je 0x4172b5
jmp 0x41372e
mov ecx, eax
sub ecx, 0xb47b69f0
je 0x417947
jmp 0x41373e
mov ecx, eax
sub ecx, 0xb4b6285b
je 0x415d40
jmp 0x41374e
mov ecx, eax
sub ecx, 0xb5514203
je 0x416ac6
jmp 0x41375e
mov ecx, eax
sub ecx, 0xb5dddf73
je 0x415305
jmp 0x41376e
mov ecx, eax
sub ecx, 0xb7d4b168
je 0x416bec
jmp 0x41377e
mov ecx, eax
sub ecx, 0xb7d84cc1
je 0x41738e
jmp 0x41378e
mov ecx, eax
sub ecx, 0xb7febac7
je 0x4172e5
jmp 0x41379e
mov ecx, eax
sub ecx, 0xba3097a7
je 0x41652e
jmp 0x4137ae
mov ecx, eax
sub ecx, 0xbb14ad8f
je 0x41578c
jmp 0x4137be
mov ecx, eax
sub ecx, 0xbbc0a22b
je 0x4141ff
jmp 0x4137ce
mov ecx, eax
sub ecx, 0xbbf04ff7
je 0x415fa7
jmp 0x4137de
mov ecx, eax
sub ecx, 0xbf115a2b
je 0x41693a
jmp 0x4137ee
mov ecx, eax
sub ecx, 0xbf43befd
je 0x415c9e
jmp 0x4137fe
mov ecx, eax
sub ecx, 0xc10c864e
je 0x414bff
jmp 0x41380e
mov ecx, eax
sub ecx, 0xc199044d
je 0x4171d2
jmp 0x41381e
mov ecx, eax
sub ecx, 0xc2ca6ec1
je 0x415fef
jmp 0x41382e
mov ecx, eax
sub ecx, 0xc4a29919
je 0x414213
jmp 0x41383e
mov ecx, eax
sub ecx, 0xc75b8df1
je 0x41543b
jmp 0x41384e
mov ecx, eax
sub ecx, 0xcac0dd17
je 0x4155d0
jmp 0x41385e
mov ecx, eax
sub ecx, 0xcbe9a89f
je 0x4157c2
mov eax, dword [esp + 0x2c]
mov dword [eax], 0xb219be52
mov byte [esp + 0x40], 0
jmp 0x418189
mov eax, dword [esp + 0x2c]
mov dword [eax], 0xa4a9f1de
jmp 0x418189
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x2ac5b17c
jmp 0x418189
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x18e26895
jmp 0x418189
mov eax, dword [esp + 0x2c]
mov dword [eax], 0xdbbd4164
jmp 0x418189
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x85def496
jmp 0x418189
mov eax, dword [esp + 0x3a8]
mov dword [esp], eax
call fcn.0043c070
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x10ff03e0
mov eax, dword [esp + 0x48]
mov dword [esp + 0x320], 4
mov dword [esp + 0x31c], eax
jmp 0x418189
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x1aa69b36
jmp 0x418189
mov eax, dword [esp + 0x188]
mov dword [esp], eax
call fcn.00408590
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x2aa18a50
jmp 0x418189
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x112dd368
jmp 0x418189
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x648e5f9c
jmp 0x418189
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x93530ae3
jmp 0x418189
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x10ff03e0
mov eax, dword [esp + 0x3b0]
mov ecx, dword [esp + 0x3ac]
mov dword [esp + 0x320], eax
mov dword [esp + 0x31c], ecx
jmp 0x418189
call fcn.00408c20
mov dword [esp + 0x3b4], eax
mov eax, dword [esp + 0x2c]
mov dword [eax], 0xacdefe63
jmp 0x418189
mov eax, dword [esp + 0x2c]
mov dword [eax], 0xe4e2b70d
jmp 0x418189
mov eax, 0x91b89a5a
test byte [esp + 0x82], 1
jne 0x414f32
mov eax, 0x8c31be66
mov ecx, dword [esp + 0x2c]
mov dword [ecx], eax
jmp 0x418189
mov eax, dword [esp + 0x18c]
mov word [eax], 0
mov al, byte [esp + 0x1c0]
mov byte [esp + 0x260], al
mov byte [esp + 0x1c4], 0x8f
mov byte [esp + 0x1c5], 0x6b
mov byte [esp + 0x1c6], 0xde
mov byte [esp + 0x1c7], 0x69
mov byte [esp + 0x1c8], 0xa3
mov byte [esp + 0x1c9], 0x6f
mov byte [esp + 0x1ca], 0xdd
mov byte [esp + 0x1cb], 0x6d
mov byte [esp + 0x1cc], 0xdc
mov byte [esp + 0x1cd], 0x53
mov byte [esp + 0x1ce], 0xb9
mov byte [esp + 0x1cf], 0x51
mov byte [esp + 0x1d0], 0xec
mov byte [esp + 0x1d1], 0x57
mov byte [esp + 0x1d2], 0x56
mov byte [esp + 0x1d3], 0x55
mov eax, 0x10
mov byte [esp + eax + 0x1c4], 0
add eax, 1
cmp eax, 0x12
jne 0x414fdc
xor eax, eax
cmp eax, 0x12
jae 0x415010
mov cl, byte [esp + eax + 0x1c4]
mov dl, al
add dl, 0x17
xor dl, cl
add dl, 0x8d
mov byte [esp + eax + 0x1c4], dl
add eax, 1
jmp 0x414fee
lea eax, [esp + 0x4b4]
lea ecx, [esp + 0x1c4]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.00409ff0
lea ecx, [esp + 0x514]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.00409ff0
lea ecx, [esp + 0x4b4]
xor edx, edx
sub edx, ecx
add eax, edx
sar eax, 1
mov dword [esp + 0x360], eax
mov eax, dword [0x44dee0]
mov ecx, dword [esp + 0x360]
xor edx, edx
lea edx, [esp + 0x4b4]
lea esi, [esp + 0x1bc]
mov dword [esp], 0
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], esi
call eax
sub esp, 0x18
mov cl, byte [esp + 0x1b0]
mov byte [esp + 0x264], cl
mov byte [esp + 0x1b4], 0x81
mov byte [esp + 0x1b5], 0xeb
mov byte [esp + 0x1b6], 0xea
mov byte [esp + 0x1b7], 0x29
mov ecx, 4
mov byte [esp + ecx + 0x1b4], 0
add ecx, 1
cmp ecx, 7
jne 0x4150ca
xor ecx, ecx
cmp ecx, 7
jae 0x415143
movzx edx, byte [esp + ecx + 0x1b4]
mov esi, ecx
xor esi, 0x28
mov edi, ecx
or edi, 0x57
and edi, esi
shl edi, 1
mov ebx, ecx
xor ebx, 0x57
add ebx, edi
mov esi, edx
and esi, 0xcb
xor esi, 0xcb
mov edi, edx
add edi, 1
xor edx, 0xffffffff
or edx, 0x34
add edx, edi
or esi, edx
xor ebx, esi
xor bl, 0x34
mov dl, 0x4c
sub dl, bl
mov byte [esp + ecx + 0x1b4], dl
mov edx, ecx
xor edx, 0x7ffffffe
mov esi, ecx
or esi, 1
and esi, edx
shl esi, 1
xor ecx, 1
add ecx, esi
jmp 0x4150dc
mov edx, dword [esp + 0x1b4]
mov ecx, 0xd8696fa
cmp eax, edx
jne 0x415158
mov ecx, 0x11dce9c5
mov eax, dword [esp + 0x2c]
mov dword [eax], ecx
jmp 0x418189
call fcn.00408c20
mov ecx, 0x24
cdq
idiv ecx
movsx eax, byte [edx + str.0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ]
mov ecx, dword [esp + 0x18c]
add ecx, 2
mov dword [esp + 0x3bc], ecx
mov ecx, dword [esp + 0x18c]
mov word [ecx], ax
mov eax, dword [esp + 0x35c]
mov ecx, eax
and ecx, 1
shl ecx, 1
xor eax, 1
add eax, ecx
mov dword [esp + 0x3c0], eax
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x38ac84c6
mov eax, dword [esp + 0x3c0]
mov ecx, dword [esp + 0x3bc]
mov dword [esp + 0x328], ecx
mov dword [esp + 0x324], eax
jmp 0x418189
mov eax, dword [esp + 0x2c]
mov dword [eax], 0xb5dddf73
jmp 0x418189
mov eax, dword [esp + 0x30]
mov dword [esp], eax
call fcn.0043c070
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x5d602f24
jmp 0x418189
mov eax, 0x49b4df6e
cmp dword [esp + 0x38], 0
je 0x415356
mov eax, 0x585bc6d9
mov ecx, dword [esp + 0x2c]
mov dword [ecx], eax
jmp 0x418189
mov al, byte [esp + 0x68]
mov byte [esp + 0x26c], al
mov byte [esp + 0x11c], 0x56
mov byte [esp + 0x11d], 0x6b
mov byte [esp + 0x11e], 1
mov byte [esp + 0x11f], 0x69
mov byte [esp + 0x120], 0x10
mov byte [esp + 0x121], 0x6f
mov byte [esp + 0x122], 5
mov byte [esp + 0x123], 0x6d
mov byte [esp + 0x124], 0x6c
mov byte [esp + 0x125], 0x73
mov eax, 0xa
mov byte [esp + eax + 0x11c], 0
add eax, 1
cmp eax, 0x10
jne 0x4153d0
xor eax, eax
cmp eax, 0x10
jae 0x415415
movzx esi, byte [esp + eax + 0x11c]
mov ecx, 0x18
sub ecx, eax
or ecx, esi
mov edx, 0x18
sub edx, eax
and edx, esi
xor ecx, 0xffffffff
or edx, ecx
add dl, 0x7d
mov byte [esp + eax + 0x11c], dl
add eax, 1
jmp 0x4153e2
mov eax, dword [esp + 0x4c]
lea ecx, [esp + 0x11c]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.004185c0
mov eax, dword [esp + 0x2c]
mov dword [eax], 0xc75b8df1
jmp 0x418189
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x4470a113
jmp 0x418189
mov eax, dword [esp + 0x2c]
mov dword [eax], 0xe11d4729
jmp 0x418189
cmp dword [esp + 0x38], 2
sete al
and al, 1
mov byte [esp + 0x84], al
mov eax, dword [esp + 0x2c]
mov dword [eax], 0xcac0dd17
jmp 0x418189
mov eax, 0x992bd49f
test byte [esp + 0x84], 1
jne 0x4155e4
mov eax, 0x4470a113
mov ecx, dword [esp + 0x2c]
mov dword [ecx], eax
jmp 0x418189
mov al, byte [esp + 0x1ac]
mov byte [esp + 0x278], al
mov byte [esp + 0x2ec], 0x3e
mov byte [esp + 0x2ed], 0xb
mov byte [esp + 0x2ee], 0xfa
mov byte [esp + 0x2ef], 9
mov byte [esp + 0x2f0], 0x85
mov byte [esp + 0x2f1], 7
mov byte [esp + 0x2f2], 0xc9
mov byte [esp + 0x2f3], 5
mov byte [esp + 0x2f4], 4
mov byte [esp + 0x2f5], 3
mov eax, 0xa
mov byte [esp + eax + 0x2ec], 0
add eax, 1
cmp eax, 0xe
jne 0x415652
xor eax, eax
cmp eax, 0xe
jae 0x4156be
movzx edx, byte [esp + eax + 0x2ec]
mov ecx, eax
add ecx, 0x56bab43
mov esi, edx
xor esi, 0xffffffff
mov edi, ecx
and edi, esi
mov esi, 0xbc
sub esi, eax
and esi, edx
or esi, edi
xor esi, 0xffffffff
mov edi, ecx
and edi, esi
shl edi, 1
sub ecx, edi
add ecx, edx
mov edx, ecx
shl edx, 1
and edx, 2
mov esi, ecx
shl esi, 1
and esi, 2
sub ecx, esi
add ecx, 0x20
add ecx, edx
add cl, 0x91
mov byte [esp + eax + 0x2ec], cl
add eax, 1
jmp 0x415664
mov eax, dword [esp + 0x4c]
lea ecx, [esp + 0x2ec]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.004185c0
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x4470a113
jmp 0x418189
mov eax, dword [esp + 0x32c]
mov dword [esp + 0x3c8], eax
mov eax, dword [esp + 0x2c]
mov dword [eax], 0xcbe9a89f
mov eax, dword [esp + 0x3c8]
mov dword [esp + 0x164], 0
mov dword [esp + 0x160], eax
jmp 0x418189
mov eax, 0xac77d96
test byte [esp + 0x85], 1
jne 0x41587c
mov eax, 0x9832e257
mov ecx, dword [esp + 0x2c]
mov dword [ecx], eax
mov eax, dword [esp + 0x36c]
mov dword [esp + 0x330], eax
jmp 0x418189
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x81758c2c
jmp 0x418189
mov esi, dword [esp + 0x3d0]
mov al, byte [esp + 0x22c]
mov byte [esp + 0x2b0], al
mov byte [esp + 0x230], 0x4d
mov byte [esp + 0x231], 0x4a
mov byte [esp + 0x232], 0x4b
mov byte [esp + 0x233], 0x48
mov eax, 4
mov byte [esp + eax + 0x230], 0
add eax, 1
cmp eax, 5
jne 0x41596a
xor eax, eax
cmp eax, 5
jae 0x4159c6
movzx ecx, byte [esp + eax + 0x230]
mov edx, eax
add edx, 0x73
and edx, ecx
mov edi, edx
and edi, 2
xor edi, 2
mov ebx, edx
and ebx, 0xfd
imul ebx, edi
mov edi, edx
and edi, 2
or edx, 2
imul edx, edi
add edx, ebx
add ecx, eax
add ecx, 0x73
sub ecx, edx
add cl, 0xc1
mov byte [esp + eax + 0x230], cl
add eax, 1
jmp 0x41597c
mov edi, dword [esp + 0x230]
xor ebx, ebx
cmp ebx, dword [0x44dee4]
jb 0x4159d9
jmp 0x415a29
mov eax, dword [0x44dee8]
cmp dword [eax + ebx*8], 0x1b6183f2
sete cl
test cl, 1
jne 0x4159ef
jmp 0x415a1d
mov eax, dword [eax + ebx*8 + 4]
cmp eax, edi
je 0x415a1d
mov byte [esp + 0x77], cl
mov ecx, dword [0x44deec]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 4
mov dword [esp + 0xc], esi
call fcn.0043e980
mov cl, byte [esp + 0x77]
test cl, 1
je 0x415a24
jmp 0x415a29
add ebx, 1
jmp 0x4159cf
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x76f54881
jmp 0x418189
mov esi, dword [esp + 0x330]
mov eax, dword [esp + 0x30]
mov dword [esp], eax
call fcn.0043c070
mov dword [esp + 0x30], 0
mov eax, 0xde53ff11
cmp esi, 0
jge 0x415a7f
mov eax, 0x348ac989
mov ecx, dword [esp + 0x2c]
mov dword [ecx], eax
jmp 0x418189
mov eax, dword [esp + 0x2c]
mov dword [eax], 0xd3f3f36e
mov eax, dword [esp + 0x3d8]
mov dword [esp + 0x334], eax
jmp 0x418189
mov eax, dword [esp + 0x338]
mov dword [esp + 0x374], eax
mov eax, dword [esp + 0x3d4]
mov ecx, eax
and ecx, 9
or eax, 9
add eax, ecx
mov ecx, dword [esp + 0x370]
mov edx, eax
and edx, ecx
or eax, ecx
add eax, edx
add eax, dword [esp + 0x374]
add eax, 1
mov ecx, 2
mul ecx
seto dl
mov ecx, 0xffffffff
test dl, 1
jne 0x415d8e
mov ecx, eax
mov dword [esp], ecx
call fcn.00408580
mov dword [esp + 0x378], eax
mov al, byte [esp + 0x1a0]
mov byte [esp + 0x284], al
mov byte [esp + 0x2cc], 0x3e
mov byte [esp + 0x2cd], 0x89
mov byte [esp + 0x2ce], 0x3b
mov byte [esp + 0x2cf], 0x8f
mov byte [esp + 0x2d0], 0x3e
mov byte [esp + 0x2d1], 0x8d
mov byte [esp + 0x2d2], 0x26
mov byte [esp + 0x2d3], 0x83
mov byte [esp + 0x2d4], 0x3c
mov byte [esp + 0x2d5], 0x81
mov byte [esp + 0x2d6], 0x3a
mov byte [esp + 0x2d7], 0x87
mov byte [esp + 0x2d8], 0xf3
mov byte [esp + 0x2d9], 0x85
mov byte [esp + 0x2da], 0xec
mov byte [esp + 0x2db], 0x9b
mov byte [esp + 0x2dc], 0x98
mov byte [esp + 0x2dd], 0x99
mov eax, 0x12
mov byte [esp + eax + 0x2cc], 0
add eax, 1
cmp eax, 0x18
jne 0x415e40
xor eax, eax
cmp eax, 0x18
jae 0x415e74
mov cl, byte [esp + eax + 0x2cc]
mov dl, al
add dl, 0xa2
xor dl, cl
add dl, 0xd6
mov byte [esp + eax + 0x2cc], dl
add eax, 1
jmp 0x415e52
mov eax, dword [esp + 0x378]
lea ecx, [esp + 0x2cc]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.00409ff0
mov ecx, eax
add ecx, 2
mov word [eax], 0x20
add ecx, 2
mov word [eax + 2], 0x22
mov eax, dword [esp + 0x34]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00409ff0
mov ecx, eax
add ecx, 2
mov dword [esp + 0x194], ecx
mov word [eax], 0x22
mov eax, 0xf081d32c
cmp dword [esp + 0x34], 0
je 0x415ed3
mov eax, 0x77c9aacf
mov ecx, dword [esp + 0x2c]
mov dword [ecx], eax
jmp 0x418189
mov eax, dword [esp + 0x2c]
mov dword [eax], 0xf081d32c
jmp 0x418189
mov eax, dword [esp + 0x33c]
mov dword [esp + 0x37c], eax
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x763b2a74
jmp 0x418189
mov eax, dword [esp + 0x37c]
add eax, 2
mov ecx, dword [esp + 0x37c]
mov word [ecx], 0x2c
mov ecx, dword [esp + 0x374]
mov edx, dword [esp + 0x190]
xor esi, esi
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0
call fcn.0040aaa0
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x871176ad
jmp 0x418189
mov eax, dword [esp + 0x2c]
mov dword [eax], 0xf64151fc
mov eax, dword [esp + 0x378]
mov dword [esp + 0x170], 0
mov dword [esp + 0x16c], 0
mov dword [esp + 0x168], eax
jmp 0x418189
mov eax, dword [esp + 0x2c]
mov dword [eax], 0xf64151fc
mov eax, dword [esp + 0x380]
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x38]
mov dword [esp + 0x170], edx
mov dword [esp + 0x16c], ecx
mov dword [esp + 0x168], eax
jmp 0x418189
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x7fb55a4e
jmp 0x418189
mov eax, dword [esp + 0x350]
xor eax, 1
mov ecx, dword [esp + 0x38]
xor ecx, 2
or eax, ecx
sete cl
mov eax, 0x1260b5d
test cl, 1
jne 0x416553
mov eax, 0xe18df555
mov ecx, dword [esp + 0x2c]
mov dword [ecx], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0x17c], eax
mov dword [esp + 0x178], 0
mov dword [esp + 0x174], 0
jmp 0x418189
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x9bd94ff2
jmp 0x418189
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x202d19c3
jmp 0x418189
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x835947f1
jmp 0x418189
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x5d7f7d96
jmp 0x418189
mov eax, 0xcda3d0c2
cmp dword [esp + 0x14c], 1
jl 0x41694e
mov eax, 0xe0e5375e
mov ecx, dword [esp + 0x2c]
mov dword [ecx], eax
jmp 0x418189
mov eax, 0x460667f8
test byte [esp + 0x41], 1
jne 0x4169c7
mov eax, 0x9b47ee3a
mov ecx, dword [esp + 0x2c]
mov dword [ecx], eax
jmp 0x418189
mov eax, dword [0x44ded8]
mov dword [esp], eax
mov dword [esp + 4], 0xef6ed546
call fcn.00440630
test eax, eax
setne cl
mov ecx, dword [esp + 0x198]
mov edx, dword [esp + 0x130]
xor esi, esi
lea esi, [esp + 0x470]
lea edi, [esp + 0x41c]
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
cmp eax, 0
setne al
and al, 1
mov byte [esp + 0x86], al
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x30250aec
jmp 0x418189
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x8ac0e088
jmp 0x418189
mov esi, dword [esp + 0x41c]
mov al, byte [esp + 0x220]
mov byte [esp + 0x2b4], al
mov byte [esp + 0x224], 0x4d
mov byte [esp + 0x225], 0x4a
mov byte [esp + 0x226], 0x4b
mov byte [esp + 0x227], 0x48
mov eax, 4
mov byte [esp + eax + 0x224], 0
add eax, 1
cmp eax, 5
jne 0x416b0f
xor eax, eax
cmp eax, 5
jae 0x416b6b
movzx ecx, byte [esp + eax + 0x224]
mov edx, eax
add edx, 0x73
and edx, ecx
mov edi, edx
and edi, 2
xor edi, 2
mov ebx, edx
and ebx, 0xfd
imul ebx, edi
mov edi, edx
and edi, 2
or edx, 2
imul edx, edi
add edx, ebx
add ecx, eax
add ecx, 0x73
sub ecx, edx
add cl, 0xc1
mov byte [esp + eax + 0x224], cl
add eax, 1
jmp 0x416b21
mov edi, dword [esp + 0x224]
xor ebx, ebx
cmp ebx, dword [0x44dee4]
jb 0x416b7e
jmp 0x416bce
mov eax, dword [0x44dee8]
cmp dword [eax + ebx*8], 0x1b6183f2
sete cl
test cl, 1
jne 0x416b94
jmp 0x416bc2
mov eax, dword [eax + ebx*8 + 4]
cmp eax, edi
je 0x416bc2
mov byte [esp + 0x78], cl
mov ecx, dword [0x44deec]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 4
mov dword [esp + 0xc], esi
call fcn.0043e980
mov cl, byte [esp + 0x78]
test cl, 1
je 0x416bc9
jmp 0x416bce
add ebx, 1
jmp 0x416b74
mov eax, dword [esp + 0x2c]
mov dword [eax], 0xdc8472cb
jmp 0x418189
mov eax, dword [esp + 0x2c]
mov dword [eax], 0xfca0215
jmp 0x418189
mov eax, dword [0x44ded8]
mov dword [esp], eax
mov dword [esp + 4], 0x737de518
call fcn.00440630
mov esi, eax
test esi, esi
setne al
call fcn.00418630
call fcn.00418630
mov eax, dword [esp + 0x30]
xor ecx, ecx
lea ecx, [0x423fd0]
mov dword [esp], 0
mov dword [esp + 4], 0
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0
call esi
sub esp, 0x18
mov dword [esp + 0x19c], eax
mov eax, 0x339b0676
cmp dword [esp + 0x19c], 0
jne 0x416c74
mov eax, 0x66670f30
mov ecx, dword [esp + 0x2c]
mov dword [ecx], eax
jmp 0x418189
mov eax, dword [esp + 0x198]
mov dword [esp], eax
call fcn.00408590
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x7c745ae4
jmp 0x418189
mov al, byte [esp + 0x40]
and al, 1
movzx eax, al
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
scasb al, byte es:[edi]
invalid
adc al, 0xf2
mov byte [0xdcc6ecd2], al
cmc
les ebp, [eax - 0x68]
int1
outsd dx, dword [esi]
mov eax, dword [0x718790e6]
mov bl, 0xfd
mov al, byte [esp + 0x74]
mov byte [esp + 0x250], al
mov byte [esp + 0x3c], 0x94
mov byte [esp + 0x3d], 0x2b
mov eax, 2
mov byte [esp + eax + 0x3c], 0
add eax, 1
cmp eax, 4
jne 0x417326
xor eax, eax
cmp eax, 4
jae 0x41736b
movzx edx, byte [esp + eax + 0x3c]
mov ecx, eax
add ecx, 0x47
mov esi, edx
xor esi, 0xffffffff
and ecx, esi
mov ebx, 0xb8
sub ebx, eax
mov esi, 0xb8
sub esi, eax
or ebx, esi
and ebx, edx
or ebx, ecx
add bl, 0x9d
mov byte [esp + eax + 0x3c], bl
add eax, 1
jmp 0x417335
mov eax, dword [esp + 0x44]
lea ecx, [esp + 0x3c]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.004018d0
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x18e26895
jmp 0x418189
aam 0xff
insb byte es:[edi], dx
xchg esi, eax
stc
pop ds
and byte [ebx], cl
cdq
mov al, byte [0x848bc23d]
and al, 0x2c
add dword [eax], eax
add byte [ecx - 0x1817dbfc], cl
or eax, 0xc6890000
mov edi, esi
sar edi, 1
mov ecx, 2
mov eax, edi
mul ecx
seto dl
mov ecx, 0xffffffff
test dl, 1
jne 0x4173c7
mov ecx, eax
mov dword [esp], ecx
call fcn.00408580
mov ebx, eax
mov eax, dword [esp + 0x12c]
xor ecx, ecx
mov dword [esp], ebx
mov dword [esp + 4], edi
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0
call fcn.0040aaa0
xor eax, eax
lea eax, [esp + 0x70]
mov dword [esp], 0
mov dword [esp + 4], ebx
mov dword [esp + 8], esi
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], eax
call dword [0x44dee0]
sub esp, 0x18
mov al, byte [esp + 0x6c]
mov byte [esp + 0x258], al
mov byte [esp + 0x100], 0x53
mov byte [esp + 0x101], 0x71
mov byte [esp + 0x102], 0x72
mov byte [esp + 0x103], 0xb3
mov eax, 4
mov byte [esp + eax + 0x100], 0
add eax, 1
cmp eax, 7
jne 0x417454
xor eax, eax
cmp eax, 7
jae 0x4174d5
movzx edx, byte [esp + eax + 0x100]
mov ecx, eax
add ecx, 0x98b0216c
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
mov edx, ecx
shl edx, 1
and edx, 0xc6
xor ecx, 0xe3
add ecx, edx
add cl, 1
mov byte [esp + eax + 0x100], cl
mov ecx, eax
shl ecx, 1
and ecx, 2
mov edx, eax
and edx, ecx
shl edx, 1
xor eax, ecx
xor eax, 1
add eax, edx
jmp 0x417466
mov eax, dword [esp + 0x2c]
mov dword [eax], 0xdf633c34
jmp 0x418189
mov eax, dword [esp + 0x48]
mov dword [esp], eax
call fcn.00408590
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x112dd368
jmp 0x418189
out 0xfd, eax
push esp
mov ax, word [esp + 0x2c]
mov dword [eax], 0x648e5f9c
jmp 0x418189
push esp
dec esi
invalid
mov al, 7
sbb al, 0x90
retf 0x1e8b
fild qword [ebx + 0x6a]
dec ecx
pop ds
mov word [ebp - 0x54], ds
push dword [esi - 0x31]
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x5d7f7d96
jmp 0x418189
add byte [eax], al
loopne 0x418000
dec edx
mov edx, dword [ebx + 0x40]
stosd dword es:[edi], eax
test eax, 0xdbb7a19d
jg 0x417fa5
inc edx
mov esi, dword [esp + 0x41c]
mov al, byte [esp + 0x1f0]
mov byte [esp + 0x2c4], al
mov byte [esp + 0x1f4], 0x4d
mov byte [esp + 0x1f5], 0x4a
mov byte [esp + 0x1f6], 0x4b
mov byte [esp + 0x1f7], 0x48
mov eax, 4
mov byte [esp + eax + 0x1f4], 0
add eax, 1
cmp eax, 5
jne 0x417ff1
invalid
xor eax, eax
cmp eax, 5
jae 0x41804d
movzx ecx, byte [esp + eax + 0x1f4]
mov edx, eax
add edx, 0x73
and edx, ecx
mov edi, edx
and edi, 2
xor edi, 2
mov ebx, edx
and ebx, 0xfd
imul ebx, edi
mov edi, edx
and edi, 2
or edx, 2
imul edx, edi
add edx, ebx
add ecx, eax
add ecx, 0x73
sub ecx, edx
add cl, 0xc1
mov byte [esp + eax + 0x1f4], cl
add eax, 1
jmp 0x418003
mov edi, dword [esp + 0x1f4]
xor ebx, ebx
cmp ebx, dword [0x44dee4]
jb 0x418060
jmp 0x4180b0
mov eax, dword [0x44dee8]
cmp dword [eax + ebx*8], 0x1b6183f2
sete cl
test cl, 1
jne 0x418076
jmp 0x4180a4
mov eax, dword [eax + ebx*8 + 4]
cmp eax, edi
je 0x4180a4
mov byte [esp + 0x7c], cl
mov ecx, dword [0x44deec]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 4
mov dword [esp + 0xc], esi
call fcn.0043e980
mov cl, byte [esp + 0x7c]
test cl, 1
je 0x4180ab
jmp 0x4180b0
add ebx, 1
jmp 0x418056
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x8ac0e088
jmp 0x418189
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x1aa2a87c
jmp 0x413457