Function at 0x41a390
Capabilities:
Encode data using xor

Disassembly:
push ebp
push ebx
push edi
push esi
mov eax, 0x1e78
call fcn.004095d0
mov dword [esp + 0xe78], 0x4b144d28
mov dword [esp + 0xe7c], 0x571d4905
mov dword [esp + 0xe80], 0x530d551d
mov dword [esp + 0xe84], 0x5f00510c
mov dword [esp + 0xe88], 0x5b3e5d05
mov dword [esp + 0xe8c], 0x67395905
mov dword [esp + 0xe90], 0x633c6529
mov dword [esp + 0xe94], 0x6160
mov dword [esp + 0xa78], 0
mov eax, dword [esp + 0xa78]
cmp eax, 0x1f
ja 0x41a458
nop
nop
nop
mov eax, dword [esp + 0xa78]
mov ecx, dword [esp + 0xa78]
movzx ecx, byte [esp + ecx + 0xe78]
add eax, 0x3cd69aca
xor eax, ecx
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x78]
add al, 0x7a
mov ecx, dword [esp + 0xa78]
mov byte [esp + ecx + 0xe78], al
inc dword [esp + 0xa78]
mov eax, dword [esp + 0xa78]
cmp eax, 0x20
jb 0x41a410
lea eax, [esp + 0x1c]
lea ebp, [esp + 0xe78]
push 0
push 0
push 0x20019
push eax
push ebp
call fcn.00436e60
add esp, 0x14
shr eax, 0x1f
jmp dword [eax*4 + 0x43d604]
lea eax, [esp + 0x5c]
lea ecx, [esp + 0x60]
push 0
push 0
push 0
push 0
push eax
push ecx
push 0
push 0
push dword [esp + 0x3c]
call fcn.00437290
add esp, 0x24
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x43d60c]
xor ebx, ebx
jmp 0x41bbc6
xor esi, esi
mov dword [esp + 4], 0
jmp 0x41a4dd
push dword [esp + 0x40]
call fcn.00409610
add esp, 4
inc esi
mov eax, dword [case.0x41a479.7]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
xor eax, eax
cmp esi, dword [esp + 0x60]
setb al
jmp dword [eax*4 + 0x43d624]
mov dword [esp + 0x38], esi
mov esi, dword [esp + 0x5c]
mov eax, esi
inc eax
lea eax, [esi + esi + 2]
jns 0x41a518
mov eax, 0xffffffff
push eax
call fcn.00409600
add esp, 4
mov ecx, eax
mov dword [esp + 0x58], esi
lea eax, [esp + 0x58]
push eax
mov dword [esp + 0x44], ecx
push ecx
mov esi, dword [esp + 0x40]
push esi
push dword [esp + 0x28]
call fcn.00436fa0
add esp, 0x10
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x43d634]
jmp dword [0x43d6c4]
lea ecx, [esp + 0x18]
mov edi, dword [esp + 0x40]
jmp dword [0x43d640]
push dword [esp + 0x1c]
push 0
push 0x20019
push ecx
push edi
call fcn.00436e60
lea ecx, [esp + 0x2c]
add esp, 0x14
nop
nop
nop
nop
nop
nop
nop
nop
nop
push dword [esp + 0x1c]
push 0
push 0x20019
push ecx
push edi
call fcn.00436e60
lea ecx, [esp + 0x2c]
add esp, 0x14
jmp dword [0x43d648]
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x43d64c]
jmp dword [0x43d6c4]
mov dword [esp + 0x78], 0x33cb31ed
mov dword [esp + 0x7c], 0x37c435d7
mov dword [esp + 0x80], 0xcb39c937
mov dword [esp + 0x84], 0xcf28cd33
mov dword [esp + 0x88], 0xc32ec134
mov dword [esp + 0x8c], 0xc73fc513
mov dword [esp + 0x90], 0xdb3ed926
mov dword [esp + 0x94], 0xdf29dd23
mov dword [esp + 0x98], 0xd3f2d123
mov dword [esp + 0x9c], 0xd733d509
mov dword [esp + 0xa0], 0xeb19e91b
mov dword [esp + 0xa4], 0xef09ed0d
mov dword [esp + 0xa8], 0xe31ce119
mov dword [esp + 0xac], 0xe7c6e503
mov dword [esp + 0xb0], 0xfb0ff92b
mov dword [esp + 0xb4], 0xff0dfd1e
mov dword [esp + 0xb8], 0xf301f179
mov dword [esp + 0xbc], 0xf713f500
mov dword [esp + 0xc0], 0x8b668975
mov dword [esp + 0xc4], 0x8f7c8d5c
mov dword [esp + 0xc8], 0x8364817f
mov dword [esp + 0xcc], 0x877a857d
mov dword [esp + 0xd0], 0x9b69997d
mov dword [esp + 0xd4], 0x9f579d70
mov dword [esp + 0xd8], 0x93a591a3
mov dword [esp + 0xdc], 0x975595a1
mov dword [esp + 0xe0], 0xab6ca96e
mov dword [esp + 0xe4], 0xaf9aad9c
mov dword [esp + 0xe8], 0xa391a191
mov dword [esp + 0xec], 0xa797a595
mov dword [esp + 0xf0], 0xbb5eb989
mov dword [esp + 0xf4], 0xbf7cbd8f
mov dword [esp + 0xf8], 0xb37ab178
mov dword [esp + 0xfc], 0xb786b575
mov dword [esp + 0x100], 0x4b7b4978
mov dword [esp + 0x104], 0x4f7a4d7c
mov dword [esp + 0x108], 0x43704182
mov dword [esp + 0x10c], 0x47704585
mov dword [esp + 0x110], 0x5b6d596e
mov dword [esp + 0x114], 0x5fb25d6a
mov word [esp + 0x118], 0x5150
lea eax, [esp + 0x11a]
mov byte [eax + 2], 0
mov word [eax], 0
mov dword [esp + 0x878], 0
mov eax, dword [esp + 0x878]
cmp eax, 0xa4
ja 0x41a80a
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 0x878]
mov ecx, dword [esp + 0x878]
movzx ecx, byte [esp + ecx + 0x78]
add eax, 0xfce6ed78
xor eax, ecx
mov dword [esp + 0xa78], eax
mov eax, dword [esp + 0xa78]
add al, 0xb8
mov ecx, dword [esp + 0x878]
mov byte [esp + ecx + 0x78], al
inc dword [esp + 0x878]
mov eax, dword [esp + 0x878]
cmp eax, 0xa5
jb 0x41a7c0
lea eax, [esp + 0x78]
mov dword [esp + 0x64], eax
mov dword [esp + 0x78], 0x2b832d99
mov dword [esp + 0x7c], 0x17882987
mov dword [esp + 0x80], 0x138d1587
mov dword [esp + 0x84], 0x1fb41183
mov dword [esp + 0x88], 0x1bbe1d80
mov dword [esp + 0x8c], 0x7af19a3
mov dword [esp + 0x90], 0x3ae0596
mov dword [esp + 0x94], 0xf950193
mov dword [esp + 0x98], 0xbea0d93
mov dword [esp + 0x9c], 0xf74a09ba
mov dword [esp + 0xa0], 0xf33df550
mov dword [esp + 0xa4], 0xff60f16d
mov dword [esp + 0xa8], 0xfb57fd62
mov dword [esp + 0xac], 0xe77af96a
mov dword [esp + 0xb0], 0xe34fe55e
mov dword [esp + 0xb4], 0xef71e17e
mov dword [esp + 0xb8], 0xeb79ed45
mov dword [esp + 0xbc], 0xd772e97a
mov dword [esp + 0xc0], 0xd37bd56f
mov dword [esp + 0xc4], 0xdf72d142
mov dword [esp + 0xc8], 0xdb41dd4f
mov dword [esp + 0xcc], 0xc726d947
mov dword [esp + 0xd0], 0xc36fc571
mov dword [esp + 0xd4], 0xcf51c15f
mov dword [esp + 0xd8], 0xcb61cd6d
mov dword [esp + 0xdc], 0xb724c961
mov dword [esp + 0xe0], 0xb352b51f
mov dword [esp + 0xe4], 0xbf23b10f
mov dword [esp + 0xe8], 0xbb25bd12
mov dword [esp + 0xec], 0xa739b921
mov dword [esp + 0xf0], 0xa30fa538
mov dword [esp + 0xf4], 0xaf0aa135
mov dword [esp + 0xf8], 0xab34ad1c
mov dword [esp + 0xfc], 0x973ca93b
mov dword [esp + 0x100], 0x9306953d
mov dword [esp + 0x104], 0x9f01913d
mov dword [esp + 0x108], 0x9b299d38
mov dword [esp + 0x10c], 0x871a9905
mov dword [esp + 0x110], 0x83118510
mov dword [esp + 0x114], 0x8f198113
mov dword [esp + 0x118], 0x8b538d28
mov dword [esp + 0x11c], 0x77ad8957
mov dword [esp + 0x120], 0x73bd75a9
mov dword [esp + 0x124], 0x7fb471ba
mov dword [esp + 0x128], 0x7ba67dac
mov dword [esp + 0x12c], 0x67b979a9
mov dword [esp + 0x130], 0x63b365b5
mov dword [esp + 0x134], 0x6fc261b1
mov dword [esp + 0x138], 0x6ba46db3
mov dword [esp + 0x13c], 0x578e69b0
mov dword [esp + 0x140], 0x53825595
mov dword [esp + 0x144], 0x5f8f5180
mov dword [esp + 0x148], 0x5b865d8c
mov dword [esp + 0x14c], 0x47985996
mov dword [esp + 0x150], 0x43984585
mov dword [esp + 0x154], 0x4f95419a
mov dword [esp + 0x158], 0x4bee4d96
mov word [esp + 0x15c], 0x4948
lea eax, [esp + 0x11a]
mov word [eax + 0x48], 0
mov dword [eax + 0x44], 0
mov dword [esp + 0x878], 0
mov eax, dword [esp + 0x878]
cmp eax, 0xeb
ja 0x41ab0a
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 0x878]
mov ecx, dword [esp + 0x878]
movzx ecx, byte [esp + ecx + 0x78]
add eax, 0x250f7da
xor eax, ecx
mov dword [esp + 0xa78], eax
mov eax, dword [esp + 0xa78]
add al, 0xa
mov ecx, dword [esp + 0x878]
mov byte [esp + ecx + 0x78], al
inc dword [esp + 0x878]
mov eax, dword [esp + 0x878]
cmp eax, 0xec
jb 0x41aac0
lea eax, [esp + 0x78]
mov dword [esp + 0x68], eax
mov dword [esp + 0x78], 0x630b612d
mov dword [esp + 0x7c], 0x67f46507
mov dword [esp + 0x80], 0x6bf96907
mov dword [esp + 0x84], 0x6f086d03
mov dword [esp + 0x88], 0x93ee9104
mov dword [esp + 0x8c], 0x97f095db
mov dword [esp + 0x90], 0x9bf399fe
mov dword [esp + 0x94], 0x9ffb9dff
mov dword [esp + 0x98], 0x83d381fc
mov dword [esp + 0x9c], 0x87a885d7
mov dword [esp + 0xa0], 0x8bf689d8
mov dword [esp + 0xa4], 0x8f1b8dc3
mov dword [esp + 0xa8], 0xb3deb124
mov dword [esp + 0xac], 0xb7d9b5db
mov dword [esp + 0xb0], 0xbbc6b9d3
mov dword [esp + 0xb4], 0xbf2cbdcc
mov dword [esp + 0xb8], 0xa3c4a1cf
mov dword [esp + 0xbc], 0xa7caa5cd
mov dword [esp + 0xc0], 0xab39a9cd
mov dword [esp + 0xc4], 0xafe1add0
mov dword [esp + 0xc8], 0xd346d145
mov dword [esp + 0xcc], 0xd7b9d5b8
mov dword [esp + 0xd0], 0xdbb1d9b7
mov dword [esp + 0xd4], 0xdf87dda0
mov dword [esp + 0xd8], 0xc395c193
mov dword [esp + 0xdc], 0xc785c591
mov dword [esp + 0xe0], 0xcb8cc98e
mov dword [esp + 0xe4], 0xcf9acd9c
mov dword [esp + 0xe8], 0xf3a1f1a1
mov dword [esp + 0xec], 0xf7a7f5a5
mov dword [esp + 0xf0], 0xfb9ef9a9
mov dword [esp + 0xf4], 0xffbcfdaf
mov dword [esp + 0xf8], 0xe3bae1b8
mov dword [esp + 0xfc], 0xe7b6e5a5
mov dword [esp + 0x100], 0xebbbe9b8
mov dword [esp + 0x104], 0xefbaedbc
mov dword [esp + 0x108], 0x13401152
mov dword [esp + 0x10c], 0x17401555
mov dword [esp + 0x110], 0x1b4d194e
mov dword [esp + 0x114], 0x1f621d4a
mov dword [esp + 0x118], 0x100
mov dword [esp + 0x878], 0
mov eax, dword [esp + 0x878]
cmp eax, 0xa3
ja 0x41ad3a
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 0x878]
mov ecx, dword [esp + 0x878]
movzx ecx, byte [esp + ecx + 0x78]
add eax, 0x2958fdf0
xor eax, ecx
mov dword [esp + 0xa78], eax
mov eax, dword [esp + 0xa78]
add al, 0x70
mov ecx, dword [esp + 0x878]
mov byte [esp + ecx + 0x78], al
inc dword [esp + 0x878]
mov eax, dword [esp + 0x878]
cmp eax, 0xa4
jb 0x41acf0
lea eax, [esp + 0x78]
mov dword [esp + 0x6c], eax
mov dword [esp + 0x78], 0x33ab314d
mov dword [esp + 0x7c], 0x37a43557
mov dword [esp + 0x80], 0x2bb929b7
mov dword [esp + 0x84], 0x2f482db3
mov dword [esp + 0x88], 0x234e21b4
mov dword [esp + 0x8c], 0x2740255b
mov dword [esp + 0x90], 0x5bc3593e
mov dword [esp + 0x94], 0x5f3b5d3f
mov dword [esp + 0x98], 0x5303513c
mov dword [esp + 0x9c], 0x57085500
mov dword [esp + 0xa0], 0x4b264918
mov dword [esp + 0xa4], 0x4fdb4d33
mov dword [esp + 0xa8], 0x43de41d4
mov dword [esp + 0xac], 0x47d945db
mov dword [esp + 0xb0], 0x7b1679e3
mov dword [esp + 0xb4], 0x7fec7d0c
mov dword [esp + 0xb8], 0x731471ef
mov dword [esp + 0xbc], 0x77ea75ed
mov dword [esp + 0xc0], 0x6bf9690d
mov dword [esp + 0xc4], 0x6f116d00
mov dword [esp + 0xc8], 0x63f661f5
mov dword [esp + 0xcc], 0x67f965f8
mov dword [esp + 0xd0], 0x9b019907
mov dword [esp + 0xd4], 0x9fd79df0
mov dword [esp + 0xd8], 0x93c591c3
mov dword [esp + 0xdc], 0x97d595c1
mov dword [esp + 0xe0], 0x8bcc89ce
mov dword [esp + 0xe4], 0x8fda8ddc
mov dword [esp + 0xe8], 0x83d181d1
mov dword [esp + 0xec], 0x87d785d5
mov dword [esp + 0xf0], 0xbbdeb9e9
mov dword [esp + 0xf4], 0xbffcbdef
mov dword [esp + 0xf8], 0xb3fab1f8
mov dword [esp + 0xfc], 0xb7e6b5f5
mov dword [esp + 0x100], 0xabfba9f8
mov dword [esp + 0x104], 0xaffaadfc
mov dword [esp + 0x108], 0xa3f0a1e2
mov dword [esp + 0x10c], 0xa7f0a5e5
mov dword [esp + 0x110], 0xdb8dd98e
mov dword [esp + 0x114], 0xdfb2dd8a
mov word [esp + 0x118], 0xd1d0
mov dword [esp + 0x11a], 0
mov dword [esp + 0x878], 0
mov eax, dword [esp + 0x878]
cmp eax, 0xa5
ja 0x41af7a
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 0x878]
mov ecx, dword [esp + 0x878]
movzx ecx, byte [esp + ecx + 0x78]
add eax, 0xf482df28
xor eax, ecx
mov dword [esp + 0xa78], eax
mov eax, dword [esp + 0xa78]
add al, 0xe8
mov ecx, dword [esp + 0x878]
mov byte [esp + ecx + 0x78], al
inc dword [esp + 0x878]
mov eax, dword [esp + 0x878]
cmp eax, 0xa6
jb 0x41af30
lea eax, [esp + 0x78]
mov dword [esp + 0x70], eax
mov dword [esp + 0x78], 0x6bf36d19
mov dword [esp + 0x7c], 0x67e869f7
mov dword [esp + 0x80], 0x63ed65f7
mov dword [esp + 0x84], 0x9f0461f3
mov dword [esp + 0x88], 0x9bfe9d10
mov dword [esp + 0x8c], 0x970c99eb
mov dword [esp + 0x90], 0x930b950e
mov dword [esp + 0x94], 0x8f13910f
mov dword [esp + 0x98], 0x8bdb8de8
mov dword [esp + 0x9c], 0x87d489c5
mov dword [esp + 0xa0], 0x83e685d4
mov dword [esp + 0xa4], 0xbf3381f3
mov dword [esp + 0xa8], 0xbb2ebd30
mov dword [esp + 0xac], 0xb725b92b
mov dword [esp + 0xb0], 0xb3d6b523
mov dword [esp + 0xb4], 0xaf20b1c0
mov dword [esp + 0xb8], 0xab30ad3f
mov dword [esp + 0xbc], 0xa732a931
mov dword [esp + 0xc0], 0xa32da539
mov dword [esp + 0xc4], 0xdfada1c4
mov dword [esp + 0xc8], 0xdb56dd51
mov dword [esp + 0xcc], 0xd745d94c
mov dword [esp + 0xd0], 0xd345d547
mov dword [esp + 0xd4], 0xcf87d1b4
mov dword [esp + 0xd8], 0xcb81cd83
mov dword [esp + 0xdc], 0xc7b9c985
mov dword [esp + 0xe0], 0xc3b8c5be
mov dword [esp + 0xe4], 0xffb2c190
mov dword [esp + 0xe8], 0xfbb5fdad
mov dword [esp + 0xec], 0xf7a7f9a9
mov dword [esp + 0xf0], 0xf36ef5a5
mov dword [esp + 0xf4], 0xef90f1bf
mov dword [esp + 0xf8], 0xeba2eda4
mov dword [esp + 0xfc], 0xe7b6e9a9
mov dword [esp + 0x100], 0xe3b3e5b4
mov dword [esp + 0x104], 0x1f52e1b0
mov dword [esp + 0x108], 0x1b541d62
mov dword [esp + 0x10c], 0x175c1959
mov dword [esp + 0x110], 0x1359155e
mov dword [esp + 0x114], 0xf6a115a
mov word [esp + 0x118], 0xd0c
lea eax, [esp + 0x11a]
mov byte [eax + 2], 0
mov word [eax], 0
mov dword [esp + 0x878], 0
mov eax, dword [esp + 0x878]
cmp eax, 0xa4
ja 0x41b1ba
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 0x878]
mov ecx, dword [esp + 0x878]
movzx ecx, byte [esp + ecx + 0x78]
add eax, 0x7e6852f2
xor eax, ecx
mov dword [esp + 0xa78], eax
mov eax, dword [esp + 0xa78]
add al, 0x62
mov ecx, dword [esp + 0x878]
mov byte [esp + ecx + 0x78], al
inc dword [esp + 0x878]
mov eax, dword [esp + 0x878]
cmp eax, 0xa5
jb 0x41b170
lea eax, [esp + 0x78]
mov dword [esp + 0x74], eax
xor ecx, ecx
xor eax, eax
cmp ecx, 0x14
setne al
jmp dword [eax*4 + 0x43d654]
mov eax, dword [esp + 0x18]
mov dword [esp + 0x78], 0x1c1d1e1f
mov dword [esp + 0x7c], 0
mov dword [esp + 0x878], 0
mov ecx, dword [esp + 0x878]
cmp ecx, 7
ja 0x41b25a
nop
nop
nop
nop
nop
mov ecx, dword [esp + 0x878]
mov edx, dword [esp + 0x878]
movzx edx, byte [esp + edx + 0x78]
add ecx, 0x2fee2984
xor ecx, edx
mov dword [esp + 0xa78], ecx
mov ecx, dword [esp + 0xa78]
add cl, 0x64
mov edx, dword [esp + 0x878]
mov byte [esp + edx + 0x78], cl
inc dword [esp + 0x878]
mov ecx, dword [esp + 0x878]
cmp ecx, 8
jb 0x41b210
mov edx, dword [0x441e1c]
mov ecx, dword [edx]
mov edx, dword [edx + 4]
cmp ecx, edx
je 0x41b940
mov esi, dword [esp + 0x78]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [ecx], 0x625b6034
je 0x41b934
add ecx, 8
cmp ecx, edx
jne 0x41b280
jmp 0x41b940
mov ecx, dword [esp + 0x50]
add ecx, 4
xor eax, eax
cmp ecx, 0x14
setne al
jmp dword [eax*4 + 0x43d654]
mov dword [esp + 0x50], ecx
mov eax, dword [esp + ecx + 0x64]
mov dword [esp + 0x78], 0x83b281b0
mov dword [esp + 0x7c], 0x87b685b4
mov dword [esp + 0x80], 0x8bba89b8
mov dword [esp + 0x84], 0x8f568dbc
mov word [esp + 0x88], 0x9190
lea ecx, [esp + 0x11a]
mov byte [ecx - 0x8e], 0
mov word [ecx - 0x90], 0
mov dword [esp + 0x878], 0
mov ecx, dword [esp + 0x878]
cmp ecx, 0x14
ja 0x41b36a
nop
nop
nop
nop
mov ecx, dword [esp + 0x878]
mov edx, dword [esp + 0x878]
movzx edx, byte [esp + edx + 0x78]
add ecx, 0xc3840b40
xor ecx, edx
mov dword [esp + 0xa78], ecx
mov ecx, dword [esp + 0xa78]
add cl, 0x40
mov edx, dword [esp + 0x878]
mov byte [esp + edx + 0x78], cl
inc dword [esp + 0x878]
mov ecx, dword [esp + 0x878]
cmp ecx, 0x15
jb 0x41b320
movzx ecx, word [eax]
lea edx, [esp + 0x878]
test cx, cx
je 0x41b391
add eax, 2
nop
nop
nop
nop
mov word [edx], cx
add edx, 2
movzx ecx, word [eax]
add eax, 2
test cx, cx
jne 0x41b380
mov word [edx], 0
movzx eax, word [esp + 0x78]
test ax, ax
je 0x41b3c1
lea ecx, [esp + 0x7a]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [edx], ax
add edx, 2
movzx eax, word [ecx]
add ecx, 2
test ax, ax
jne 0x41b3b0
mov word [edx], 0
mov cx, 0x31
xor eax, eax
cmp cx, 0x35
setb al
mov dword [esp + 0xc], edx
jmp dword [eax*4 + 0x43d65c]
inc esi
xor eax, eax
cmp si, 0x35
setb al
mov edx, dword [esp + 0xc]
mov ecx, esi
jmp dword [eax*4 + 0x43d65c]
mov word [edx - 2], cx
push dword [esp + 0x18]
push 0
push 0x20019
lea eax, [esp + 0x58]
push eax
lea eax, [esp + 0x888]
push eax
mov esi, ecx
call fcn.00436e60
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x43d674]
mov dword [esp + 0x44], esi
mov dword [esp + 0x54], 0x800
mov dword [esp + 0x3c], 0x400
xor ecx, ecx
mov dword [esp + 8], 0
jmp 0x41b465
mov word [ebp], 0xa
add ebp, 2
mov al, 1
mov dword [esp + 4], eax
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp + 0x10]
inc ecx
lea eax, [esp + 0x3c]
push eax
lea eax, [esp + 0xa7c]
push eax
lea eax, [esp + 0x50]
push eax
lea eax, [esp + 0x60]
push eax
lea eax, [esp + 0x88]
push eax
mov dword [esp + 0x24], ecx
push ecx
push dword [esp + 0x64]
call fcn.00437580
add esp, 0x1c
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x43d67c]
test byte [esp + 8], 1
sete al
cmp dword [esp + 0x48], 1
sete cl
and cl, al
movzx eax, cl
jmp dword [eax*4 + 0x43d684]
mov eax, dword [case.0x41b902.12]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
mov dword [esp + 0x20], 0x9b399959
mov dword [esp + 0x24], 0x87118527
mov dword [esp + 0x28], 0x8314811d
mov dword [esp + 0x2c], 0x8f8e8d10
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0xf
ja 0x41b53e
nop
mov eax, dword [esp]
mov ecx, dword [esp]
movzx ecx, byte [esp + ecx + 0x20]
add eax, 0x8aa4d96c
xor eax, ecx
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x14]
add al, 0xc
mov ecx, dword [esp]
mov byte [esp + ecx + 0x20], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x10
jb 0x41b510
movzx edi, word [esp + 0x20]
lea eax, [esp + 0x78]
test di, di
je 0x41b58c
lea ecx, [esp + 0x20]
mov esi, eax
jmp 0x41b568
movzx edi, word [ecx]
test di, di
je 0x41b58c
movzx ebx, word [esi]
test bx, bx
je 0x41b58a
add esi, 2
add ecx, 2
lea edx, [eax + 2]
cmp bx, di
je 0x41b582
mov eax, edx
mov esi, edx
je 0x41b560
lea ecx, [esp + 0x20]
jmp 0x41b560
xor eax, eax
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x43d68c]
mov eax, dword [esp + 0x48]
xor ecx, ecx
cmp eax, 3
sete cl
jmp dword [ecx*4 + 0x43d6b4]
mov dword [esp + 0x20], 0x83638150
mov dword [esp + 0x24], 0x87758577
mov dword [esp + 0x28], 0x8b65897f
mov dword [esp + 0x2c], 0x8f6a8d7e
mov word [esp + 0x30], 0x9190
lea eax, [esp + 0x32]
mov word [eax + 4], 0
mov dword [eax], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x17
ja 0x41b62e
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
mov ecx, dword [esp]
movzx ecx, byte [esp + ecx + 0x20]
add eax, 0xeb86c3c0
xor eax, ecx
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x14]
add al, 0xc0
mov ecx, dword [esp]
mov byte [esp + ecx + 0x20], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x18
jb 0x41b600
movzx edi, word [esp + 0x20]
lea eax, [esp + 0x78]
test di, di
je 0x41b75f
lea ecx, [esp + 0x20]
mov edx, eax
jmp 0x41b65c
movzx edi, word [ecx]
test di, di
je 0x41b75f
movzx ebx, word [edx]
test bx, bx
je 0x41b75d
add edx, 2
add ecx, 2
lea esi, [eax + 2]
cmp bx, di
je 0x41b67a
mov eax, esi
mov edx, esi
je 0x41b650
lea ecx, [esp + 0x20]
jmp 0x41b650
mov eax, dword [esp + 0x3c]
cmp eax, 2
jb 0x41b743
shr eax, 1
lea edx, [eax - 1]
mov edi, eax
and edi, 3
je 0x41b7ca
mov dword [esp + 8], edx
xor ebx, ebx
lea ecx, [esp + 0xa78]
nop
nop
nop
nop
nop
nop
movzx esi, word [ecx]
xor edx, edx
test si, si
setne dl
lea ecx, [ecx + edx*2]
mov word [ebp], si
add ebp, 2
inc ebx
cmp edi, ebx
jne 0x41b6c0
sub eax, ebx
mov edx, dword [esp + 8]
cmp edx, 3
jb 0x41b743
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edx, word [ecx]
xor ebx, ebx
test dx, dx
setne bl
lea esi, [ecx + ebx*2]
mov word [ebp], dx
movzx ecx, word [ecx + ebx*2]
xor edx, edx
test cx, cx
setne dl
lea edi, [esi + edx*2]
mov word [ebp + 2], cx
movzx ecx, word [esi + edx*2]
xor edx, edx
test cx, cx
setne dl
lea esi, [edi + edx*2]
mov word [ebp + 4], cx
movzx edx, word [edi + edx*2]
xor ecx, ecx
test dx, dx
setne cl
mov word [ebp + 6], dx
add ebp, 8
lea ecx, [esi + ecx*2]
add eax, 0xfffffffc
jne 0x41b6f0
mov word [ebp], 0x3a
mov word [ebp + 2], 0x20
add ebp, 4
mov al, 1
mov dword [esp + 8], eax
jmp case.0x41b902.22
xor eax, eax
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x43d6bc]
jmp case.0x41b902.22
mov eax, dword [esp + 0x3c]
cmp eax, 2
jb 0x41b449
shr eax, 1
lea edx, [eax - 1]
mov edi, eax
and edi, 3
je 0x41b7df
mov dword [esp + 4], edx
xor edx, edx
lea ecx, [esp + 0xa78]
nop
nop
nop
nop
nop
nop
nop
nop
movzx esi, word [ecx]
xor ebx, ebx
test si, si
setne bl
lea ecx, [ecx + ebx*2]
mov word [ebp], si
add ebp, 2
inc edx
cmp edi, edx
jne 0x41b7a0
sub eax, edx
mov edx, dword [esp + 4]
cmp edx, 3
jae 0x41b7f0
jmp 0x41b449
lea ecx, [esp + 0xa78]
cmp edx, 3
jae 0x41b6f0
jmp 0x41b743
lea ecx, [esp + 0xa78]
cmp edx, 3
jb 0x41b449
nop
movzx edx, word [ecx]
xor ebx, ebx
test dx, dx
setne bl
lea esi, [ecx + ebx*2]
mov word [ebp], dx
movzx ecx, word [ecx + ebx*2]
xor edx, edx
test cx, cx
setne dl
lea edi, [esi + edx*2]
mov word [ebp + 2], cx
movzx ecx, word [esi + edx*2]
xor edx, edx
test cx, cx
setne dl
lea esi, [edi + edx*2]
mov word [ebp + 4], cx
movzx edx, word [edi + edx*2]
xor ecx, ecx
test dx, dx
setne cl
mov word [ebp + 6], dx
add ebp, 8
lea ecx, [esi + ecx*2]
add eax, 0xfffffffc
jne 0x41b7f0
jmp 0x41b449
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x20], 0x1c1d1e1f
mov dword [esp + 0x24], 0
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 7
ja 0x41b8b0
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp]
mov edx, dword [esp]
movzx edx, byte [esp + edx + 0x20]
add ecx, 0x2fee2984
xor ecx, edx
mov dword [esp + 0x14], ecx
mov ecx, dword [esp + 0x14]
add cl, 0x64
mov edx, dword [esp]
mov byte [esp + edx + 0x20], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 8
jb 0x41b880
mov edx, dword [0x441e1c]
mov ecx, dword [edx]
mov edx, dword [edx + 4]
cmp ecx, edx
je 0x41b8f0
mov esi, dword [esp + 0x20]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [ecx], 0x625b6034
je 0x41b8e1
add ecx, 8
cmp ecx, edx
jne 0x41b8d0
jmp 0x41b8f0
mov ecx, dword [ecx + 4]
cmp ecx, esi
jne case.default.0x41b902
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp + 0x44]
inc ecx
xor eax, eax
cmp cx, 0x35
setb al
mov edx, dword [esp + 0xc]
jmp dword [eax*4 + 0x43d65c]
push eax
push 1
push dword [0x441e20]
push ecx
call fcn.00434480
add esp, 0x10
mov ecx, dword [esp + 0x44]
inc ecx
xor eax, eax
cmp cx, 0x35
setb al
mov edx, dword [esp + 0xc]
jmp dword [eax*4 + 0x43d65c]
mov ecx, dword [ecx + 4]
cmp ecx, esi
jne 0x41b94a
nop
nop
nop
nop
nop
mov esi, dword [esp + 0x38]
jmp dword [0x43d6c4]
push eax
push 1
push dword [0x441e20]
push ecx
call fcn.00434480
add esp, 0x10
mov esi, dword [esp + 0x38]
jmp dword [0x43d6c4]
mov word [ebp], 0
mov ebx, dword [esp + 4]
mov eax, ebx
and al, 1
movzx eax, al
jmp dword [eax*4 + 0x43d62c]
movzx ecx, word [esp + 0xe78]
xor edi, edi
test cx, cx
je 0x41b9d4
lea eax, [esp + 0xe78]
jmp 0x41b9ae
add edi, edx
movzx ecx, word [eax + 2]
add eax, 2
test cx, cx
je 0x41b9d4
cmp eax, ebp
jae 0x41b9d4
movzx esi, cx
cmp esi, 0x800
mov ecx, 3
sbb ecx, 0
mov edx, 1
cmp esi, 0x80
jb 0x41b9a0
mov edx, ecx
jmp 0x41b9a0
lea eax, [edi + 1]
mov dword [esp + 8], eax
push eax
call fcn.00409600
add esp, 4
mov esi, eax
lea eax, [esp + 0xe78]
cmp eax, ebp
setb al
mov dword [esp + 4], esi
mov ecx, edi
mov dword [esp + 0xc], edi
test edi, edi
jle 0x41bad5
mov esi, dword [esp + 4]
test al, al
je 0x41bad5
mov eax, dword [esp + 0xc]
mov esi, dword [esp + 4]
add eax, esi
mov dword [esp + 0x10], eax
add dword [esp + 8], esi
lea edx, [esp + 0xe7a]
nop
nop
nop
nop
nop
nop
nop
movzx ebx, word [edx - 2]
test bx, bx
je 0x41bad5
cmp bx, 0x7f
ja 0x41ba50
mov byte [esi], bl
mov edi, 1
jmp 0x41bac0
mov eax, esi
not eax
add eax, dword [esp + 8]
movzx ecx, bx
cmp eax, 2
jb 0x41ba90
cmp ecx, 0x7ff
ja 0x41ba90
mov eax, ebx
shr eax, 6
add al, 0xc0
mov byte [esi], al
and bl, 0x3f
or bl, 0x80
mov byte [esi + 1], bl
mov edi, 2
jmp 0x41bac0
xor edi, edi
cmp eax, 3
jb 0x41bac0
mov eax, ecx
shr eax, 0xc
or al, 0xe0
mov byte [esi], al
shr ecx, 6
and cl, 0x3f
or cl, 0x80
mov byte [esi + 1], cl
and bl, 0x3f
or bl, 0x80
mov byte [esi + 2], bl
mov edi, 3
nop
nop
nop
nop
nop
nop
add esi, edi
cmp esi, dword [esp + 0x10]
jae 0x41bad5
lea eax, [edx + 2]
cmp edx, ebp
mov edx, eax
jb 0x41ba30
mov byte [esi], 0
mov dword [esp + 0x78], 0xafa2a171
mov dword [esp + 0x7c], 0xa35756ad
mov dword [esp + 0x80], 0xb8b4b6b1
mov dword [esp + 0x84], 0xbbbb5273
mov dword [esp + 0x88], 0xb8bdbebc
mov dword [esp + 0x8c], 0xb8b4557b
mov dword [esp + 0x90], 0x3ec6c03e
mov dword [esp + 0x94], 0xd7ca03cf
mov dword [esp + 0x98], 0x51c4
mov dword [esp + 0x878], 0
mov eax, dword [esp + 0x878]
cmp eax, 0x23
ja 0x41bb98
nop
nop
nop
nop
mov eax, dword [esp + 0x878]
mov ecx, dword [esp + 0x878]
movzx ecx, byte [esp + ecx + 0x78]
add eax, 0x550e8a28
xor eax, ecx
mov dword [esp + 0xa78], eax
mov eax, dword [esp + 0xa78]
add al, 0xe8
mov ecx, dword [esp + 0x878]
mov byte [esp + ecx + 0x78], al
inc dword [esp + 0x878]
mov eax, dword [esp + 0x878]
cmp eax, 0x24
jb 0x41bb50
lea eax, [esp + 0x78]
mov ecx, dword [esp + 0x1e8c]
push dword [esp + 0xc]
mov esi, dword [esp + 8]
push esi
push eax
call fcn.0040a260
mov ebx, eax
jmp dword [0x43d6cc]
push esi
call fcn.00409610
add esp, 4
and bl, 1
mov eax, ebx
add esp, 0x1e78
pop esi
pop edi
pop ebx
pop ebp
ret
int3
movsb byte es:[edi], byte [esi]
inc ecx
add byte [esi - 0x51ffbe5c], ch
movsb byte es:[edi], byte [esi]
inc ecx
add byte [ebp - 0xfffbe5c], dh
movsb byte es:[edi], byte [esi]
inc ecx
add al, dh
movsb byte es:[edi], byte [esi]
inc ecx
add al, dh
movsb byte es:[edi], byte [esi]
inc ecx
add dl, dh
movsb byte es:[edi], byte [esi]
inc ecx
add byte [esi - 0x47], ah
inc ecx
add byte [edx], al
movsd dword es:[edi], dword [esi]
inc ecx
add bl, al
mov ebx, 0xb97e0041
inc ecx
add byte [esi - 0x5b], cl
inc ecx
add byte [eax - 0x5b], ah
inc ecx
add byte [esi - 0x5b], ch
inc ecx
add byte [eax - 0x6fffbe5b], dl
movsd dword es:[edi], dword [esi]
inc ecx
add byte [edi - 0x44ffbe5b], ch
movsd dword es:[edi], dword [esi]
inc ecx
add al, dl
movsd dword es:[edi], dword [esi]
inc ecx
add al, ah
mov cl, 0x41
add byte [esi - 0x5fffbe4e], dh
mov dl, 0x41
add bh, dh
mov bl, 0x41
add byte [ecx], al
add byte [eax], al
add byte [ecx], al
add byte [eax], al
add bl, dl
mov ebx, 0x10041
add byte [eax], al
loopne 0x43d629
inc ecx
add byte [ecx], ch
mov ah, 0x41
add byte [eax - 0x48], dl
inc ecx
add byte [ecx - 0x42ffbe4c], ah
mov ah, 0x41
add al, ah
mov ah, 0x41
add byte [edx - 0x6fffbe4b], bl
mov dh, 0x41
add byte [ecx], al
add byte [eax], al
add byte [ecx], al
add byte [eax], al
add byte [ecx], al
add byte [eax], al
add byte [ecx - 0x49], cl
inc ecx
add al, dl
mov ah, 0x41
add al, dl
mov ah, 0x41
add al, dl
mov ah, 0x41
add byte [edx + 0x600041b5], bl
mov ah, 0x41
add byte [ebp + 0x6d0041b5], ch
mov bh, 0x41
add byte [edx - 0x49], dh
inc ecx
add al, dl
movsb byte es:[edi], byte [esi]
inc ecx
add ah, bl
movsb byte es:[edi], byte [esi]
inc ecx
add byte [edx - 0x3cffbe45], bh
mov ebx, 0x41
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
push eax
mov edi, 0xbf070041
inc ecx
add byte [edi - 0x41], dl
inc ecx
add byte [eax - 0x3f], ah
inc ecx
add byte [ecx + eax*8], ah
inc ecx
add byte [eax + 0x1d0041c1], al
mov dword [ecx], 0x41c1d0
xchg ecx, eax
ret 0x41