Function at 0x41f1b0
Capabilities:
Encode data using xor

Disassembly:
push ebp
push ebx
push edi
push esi
mov eax, 0x21ec
call fcn.00409a20
mov dword [esp + 0x11ec], 0x46b140bd
mov dword [esp + 0x11f0], 0x4a82448e
mov dword [esp + 0x11f4], 0x4eba4886
mov dword [esp + 0x11f8], 0x72854cb9
mov dword [esp + 0x11fc], 0x768b708e
mov dword [esp + 0x1200], 0x7a8e748e
mov dword [esp + 0x1204], 0x7e8978b2
mov dword [esp + 0x1208], 0x7c7d
mov byte [esp + 0x120c], 0
mov dword [esp + 0xa7c], 0
mov eax, dword [esp + 0xa7c]
cmp eax, 0x20
ja 0x41dc35
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 0xa7c]
mov ecx, dword [esp + 0xa7c]
movzx ecx, byte [esp + ecx + 0x11ec]
lea edx, [eax + ecx]
add edx, 0x9eab3112
add eax, 0x9eab3112
and eax, ecx
add eax, eax
sub edx, eax
mov dword [esp + 0x7c], edx
mov eax, dword [esp + 0x7c]
add al, 0xad
mov ecx, dword [esp + 0xa7c]
mov byte [esp + ecx + 0x11ec], al
inc dword [esp + 0xa7c]
mov eax, dword [esp + 0xa7c]
cmp eax, 0x21
jb 0x41dbe0
lea eax, [esp + 0x44]
lea ecx, [esp + 0x11ec]
push 0
push 0
push 0x20019
push eax
mov dword [esp + 0x14], ecx
push ecx
call fcn.004422a0
add esp, 0x14
shr eax, 0x1f
jmp dword [eax*4 + 0x448650]
lea eax, [esp + 0x64]
lea ecx, [esp + 0x5c]
push 0
push 0
push 0
push 0
push eax
push ecx
push 0
push 0
push dword [esp + 0x64]
call fcn.004426c0
add esp, 0x24
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x448668]
xor eax, eax
jmp 0x41f62c
xor ecx, ecx
xor eax, eax
mov dword [esp + 0x14], 0
cmp ecx, dword [esp + 0x5c]
setb al
xor edi, edi
jmp dword [eax*4 + 0x448680]
mov esi, dword [esp + 0x64]
mov eax, esi
inc eax
lea eax, [esi + esi + 2]
jns 0x41dcd2
mov eax, 0xffffffff
push eax
call fcn.00409a50
add esp, 4
mov dword [esp + 0x60], esi
lea ecx, [esp + 0x60]
push ecx
mov dword [esp + 0x50], eax
push eax
push edi
push dword [esp + 0x50]
call fcn.004423d0
add esp, 0x10
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x448690]
jmp dword [0x448730]
push dword [esp + 0x4c]
call fcn.00409a60
add esp, 4
inc edi
xor eax, eax
cmp edi, dword [esp + 0x5c]
setb al
jmp dword [eax*4 + 0x448680]
lea esi, [esp + 0x11c]
lea eax, [esp + 0x58]
push dword [esp + 0x44]
push 0
push 0x20019
push eax
push dword [esp + 0x5c]
call fcn.004422a0
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x448698]
jmp dword [0x448730]
mov dword [esp + 0x48], edi
mov dword [esp + 0x7c], 0xdcaade8c
mov dword [esp + 0x80], 0xd8a7dab6
mov dword [esp + 0x84], 0xe498e696
mov dword [esp + 0x88], 0xe08be292
mov dword [esp + 0x8c], 0xec89ee93
mov dword [esp + 0x90], 0xe89eeab2
mov dword [esp + 0x94], 0xf499f685
mov dword [esp + 0x98], 0xf088f282
mov dword [esp + 0x9c], 0xfcddfe82
mov dword [esp + 0xa0], 0xf892faa8
mov dword [esp + 0xa4], 0x478067a
mov dword [esp + 0xa8], 0x68026c
mov dword [esp + 0xac], 0xc7f0e78
mov dword [esp + 0xb0], 0x8290a62
mov dword [esp + 0xb4], 0x146e164a
mov dword [esp + 0xb8], 0x106c127d
mov dword [esp + 0xbc], 0x1c601e98
mov dword [esp + 0xc0], 0x18721a67
mov dword [esp + 0xc4], 0x24412654
mov dword [esp + 0xc8], 0x205f2273
mov dword [esp + 0xcc], 0x2c472e5e
mov dword [esp + 0xd0], 0x285d2a5c
mov dword [esp + 0xd4], 0x3448365c
mov dword [esp + 0xd8], 0x30763257
mov dword [esp + 0xdc], 0x3c043e02
mov dword [esp + 0xe0], 0x38743a00
mov dword [esp + 0xe4], 0x440f460d
mov dword [esp + 0xe8], 0x407d4273
mov dword [esp + 0xec], 0x4c704e70
mov dword [esp + 0xf0], 0x48764a74
mov dword [esp + 0xf4], 0x54395668
mov dword [esp + 0xf8], 0x501f526e
mov dword [esp + 0xfc], 0x5c655e67
mov dword [esp + 0x100], 0x58695a14
mov dword [esp + 0x104], 0x645a6657
mov dword [esp + 0x108], 0x605d6253
mov dword [esp + 0x10c], 0x6c536e21
mov dword [esp + 0x110], 0x68536a24
mov dword [esp + 0x114], 0x744c764d
mov dword [esp + 0x118], 0x70157249
mov word [esp + 0x11c], 0x7e7f
mov word [esi + 6], 0
mov dword [esi + 2], 0
mov dword [esp + 0x87c], 0
mov eax, dword [esp + 0x87c]
cmp eax, 0xa7
ja 0x41dfaa
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 0x87c]
mov ecx, dword [esp + 0x87c]
movzx ecx, byte [esp + ecx + 0x7c]
add eax, 0x387443d8
xor eax, ecx
mov dword [esp + 0xa7c], eax
mov eax, dword [esp + 0xa7c]
add al, 0xf9
mov ecx, dword [esp + 0x87c]
mov byte [esp + ecx + 0x7c], al
inc dword [esp + 0x87c]
mov eax, dword [esp + 0x87c]
cmp eax, 0xa8
jb 0x41df60
lea edi, [esp + 0xe7e]
lea eax, [esp + 0x7c]
mov ecx, 0x28
xchg esi, eax
rep movsd dword es:[edi], dword [esi]
xchg esi, eax
mov eax, esi
mov ecx, 1
lea edi, [esp + 0xf1e]
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov dword [esp + 0x7c], 0xbe18b0e6
mov dword [esp + 0x80], 0xba03bc10
mov dword [esp + 0x84], 0x8606b808
mov dword [esp + 0x88], 0x822f8434
mov dword [esp + 0x8c], 0x8e25803f
mov dword [esp + 0x90], 0x8a248cd4
mov dword [esp + 0x94], 0x96258839
mov dword [esp + 0x98], 0x922e9424
mov dword [esp + 0x9c], 0x9ef1902c
mov dword [esp + 0xa0], 0x9ac19ccd
mov dword [esp + 0xa4], 0xe6d6983f
mov dword [esp + 0xa8], 0xe25be45a
mov dword [esp + 0xac], 0xee4ce05d
mov dword [esp + 0xb0], 0xea51ec5d
mov dword [esp + 0xb4], 0xf644e8b1
mov dword [esp + 0xb8], 0xf24af449
mov dword [esp + 0xbc], 0xfe42f05a
mov dword [esp + 0xc0], 0xfa59fc4d
mov dword [esp + 0xc4], 0xc650f8a0
mov dword [esp + 0xc8], 0xc269c475
mov dword [esp + 0xcc], 0xce7ac070
mov dword [esp + 0xd0], 0xcaadcc70
mov dword [esp + 0xd4], 0xd664c89e
mov dword [esp + 0xd8], 0xd26ad468
mov dword [esp + 0xdc], 0xde7ad072
mov dword [esp + 0xe0], 0xda6fdc76
mov dword [esp + 0xe4], 0x26b9d870
mov dword [esp + 0xe8], 0x22982478
mov dword [esp + 0xec], 0x2e9e208d
mov dword [esp + 0xf0], 0x2a922c96
mov dword [esp + 0xf4], 0x36842897
mov dword [esp + 0xf8], 0x32913482
mov dword [esp + 0xfc], 0x3e8f3063
mov dword [esp + 0x100], 0x3a973c8c
mov dword [esp + 0x104], 0x68d3892
mov dword [esp + 0x108], 0x2ba04aa
mov dword [esp + 0x10c], 0xe5200a7
mov dword [esp + 0x110], 0xab10cb2
mov dword [esp + 0x114], 0x16ba08bf
mov dword [esp + 0x118], 0x12a214a4
mov dword [esp + 0x11c], 0x1e6810b7
mov dword [esp + 0x120], 0x1a661c60
mov dword [esp + 0x124], 0x66561866
mov dword [esp + 0x128], 0x622f642d
mov dword [esp + 0x12c], 0x6e1d6013
mov dword [esp + 0x130], 0x6a126c1e
mov dword [esp + 0x134], 0x7618681a
mov dword [esp + 0x138], 0x72d97406
mov dword [esp + 0x13c], 0x7e3f700c
mov dword [esp + 0x140], 0x7a057c07
mov dword [esp + 0x144], 0x4609783a
mov dword [esp + 0x148], 0x42344437
mov dword [esp + 0x14c], 0x4e3d4033
mov dword [esp + 0x150], 0x4a334c01
mov dword [esp + 0x154], 0x5633480a
mov dword [esp + 0x158], 0x522e542d
mov dword [esp + 0x15c], 0x5ef55029
mov word [esp + 0x160], 0x5c5f
mov byte [esi + 0x4a], 0
mov dword [esi + 0x46], 0
mov dword [esp + 0x87c], 0
mov eax, dword [esp + 0x87c]
cmp eax, 0xea
ja 0x41e2ba
nop
mov eax, dword [esp + 0x87c]
mov ecx, dword [esp + 0x87c]
movzx ecx, byte [esp + ecx + 0x7c]
add eax, 0x33c61a15
xor eax, ecx
mov dword [esp + 0xa7c], eax
mov eax, dword [esp + 0xa7c]
add al, 0x5a
mov ecx, dword [esp + 0x87c]
mov byte [esp + ecx + 0x7c], al
inc dword [esp + 0x87c]
mov eax, dword [esp + 0x87c]
cmp eax, 0xeb
jb 0x41e270
lea edi, [esp + 0xf20]
lea eax, [esp + 0x7c]
mov ecx, 0x39
xchg esi, eax
rep movsd dword es:[edi], dword [esi]
xchg esi, eax
lea eax, [esp + 0x160]
mov ecx, 1
lea edi, [esp + 0x1004]
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov dword [esp + 0x7c], 0x863c845e
mov dword [esp + 0x80], 0x9a2b9824
mov dword [esp + 0x84], 0x9e2e9c24
mov dword [esp + 0x88], 0x92379020
mov dword [esp + 0x8c], 0x96399427
mov dword [esp + 0x90], 0x6acf6848
mov dword [esp + 0x94], 0x6ed46ccd
mov dword [esp + 0x98], 0x62c460cc
mov dword [esp + 0x9c], 0x669464cf
mov dword [esp + 0xa0], 0x7a877894
mov dword [esp + 0xa4], 0x7ed17c8b
mov dword [esp + 0xa8], 0x72c470a0
mov dword [esp + 0xac], 0x76c974c7
mov dword [esp + 0xb0], 0x4af648c8
mov dword [esp + 0xb4], 0x4ee14cf0
mov dword [esp + 0xb8], 0x42f3409f
mov dword [esp + 0xbc], 0x46e344fc
mov dword [esp + 0xc0], 0x5ae558fe
mov dword [esp + 0xc4], 0x5eee5cfe
mov dword [esp + 0xc8], 0x528e50f3
mov dword [esp + 0xcc], 0x56e154e6
mov dword [esp + 0xd0], 0x2a9628eb
mov dword [esp + 0xd4], 0x2e962c94
mov dword [esp + 0xd8], 0x22e82083
mov dword [esp + 0xdc], 0x26d224d0
mov dword [esp + 0xe0], 0x3afa38d2
mov dword [esp + 0xe4], 0x3efb3cfd
mov dword [esp + 0xe8], 0x32c530cf
mov dword [esp + 0xec], 0x36c634c2
mov dword [esp + 0xf0], 0xaf808c6
mov dword [esp + 0xf4], 0xea90cfa
mov dword [esp + 0xf8], 0x2c300fc
mov dword [esp + 0xfc], 0x6cd04cb
mov dword [esp + 0x100], 0x1ae918c6
mov dword [esp + 0x104], 0x1eec1ceb
mov dword [esp + 0x108], 0x12e510ef
mov dword [esp + 0x10c], 0x16e714d1
mov dword [esp + 0x110], 0xea1fe8d6
mov dword [esp + 0x114], 0xee1aec1d
mov dword [esp + 0x118], 0xe24de019
mov word [esp + 0x11c], 0xe4e3
mov byte [esi + 4], 0
mov word [esi + 2], 0
mov dword [esp + 0x87c], 0
mov eax, dword [esp + 0x87c]
cmp eax, 0xa4
ja 0x41e51a
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 0x87c]
mov ecx, dword [esp + 0x87c]
movzx ecx, byte [esp + ecx + 0x7c]
add eax, 0x47701aeb
xor eax, ecx
mov dword [esp + 0xa7c], eax
mov eax, dword [esp + 0xa7c]
add al, 0x98
mov ecx, dword [esp + 0x87c]
mov byte [esp + ecx + 0x7c], al
inc dword [esp + 0x87c]
mov eax, dword [esp + 0x87c]
cmp eax, 0xa5
jb 0x41e4d0
lea edi, [esp + 0x114a]
lea eax, [esp + 0x7c]
mov ebx, edi
mov ecx, 0x28
xchg esi, eax
rep movsd dword es:[edi], dword [esi]
xchg esi, eax
lea eax, [esp + 0x11c]
mov ecx, 1
lea edi, [esp + 0x11ea]
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov dword [esp + 0x7c], 0x25dd23ff
mov dword [esp + 0x80], 0x39ca27c5
mov dword [esp + 0x84], 0x3dcf3bc5
mov dword [esp + 0x88], 0x31d63fc1
mov dword [esp + 0x8c], 0x35d833c6
mov dword [esp + 0x90], 0xc92e37e9
mov dword [esp + 0x94], 0xcd35cb2c
mov dword [esp + 0x98], 0xc125cf2d
mov dword [esp + 0x9c], 0xc5f5c32e
mov dword [esp + 0xa0], 0xd9e6c7f2
mov dword [esp + 0xa4], 0xdd30dbea
mov dword [esp + 0xa8], 0xd125df01
mov dword [esp + 0xac], 0xd528d326
mov dword [esp + 0xb0], 0xe917d729
mov dword [esp + 0xb4], 0xed00eb11
mov dword [esp + 0xb8], 0xe112ef3e
mov dword [esp + 0xbc], 0xe502e31d
mov dword [esp + 0xc0], 0xf904e71f
mov dword [esp + 0xc4], 0xfd0ffb1f
mov dword [esp + 0xc8], 0xf12fff12
mov dword [esp + 0xcc], 0xf500f307
mov dword [esp + 0xd0], 0x8977f70a
mov dword [esp + 0xd4], 0x8d778b75
mov dword [esp + 0xd8], 0x81498f62
mov dword [esp + 0xdc], 0x85b383b1
mov dword [esp + 0xe0], 0x995b87b3
mov dword [esp + 0xe4], 0x9d5a9b5c
mov dword [esp + 0xe8], 0x91a49fae
mov dword [esp + 0xec], 0x95a793a3
mov dword [esp + 0xf0], 0xa99997a7
mov dword [esp + 0xf4], 0xad48ab9b
mov dword [esp + 0xf8], 0xa162af9d
mov dword [esp + 0xfc], 0xa56ca36a
mov dword [esp + 0x100], 0xb988a767
mov dword [esp + 0x104], 0xbd8dbb8a
mov dword [esp + 0x108], 0xb184bf8e
mov dword [esp + 0x10c], 0xb586b370
mov dword [esp + 0x110], 0x497eb777
mov dword [esp + 0x114], 0x4d7b4b7c
mov dword [esp + 0x118], 0x41ac4f78
mov word [esp + 0x11c], 0x4342
mov byte [esi + 4], 0
mov word [esi + 2], 0
mov dword [esp + 0x87c], 0
mov eax, dword [esp + 0x87c]
cmp eax, 0xa4
ja 0x41e77a
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 0x87c]
mov ecx, dword [esp + 0x87c]
movzx ecx, byte [esp + ecx + 0x7c]
add eax, 0x47603a6a
xor eax, ecx
mov dword [esp + 0xa7c], eax
mov eax, dword [esp + 0xa7c]
add al, 0xb8
mov ecx, dword [esp + 0x87c]
mov byte [esp + ecx + 0x7c], al
inc dword [esp + 0x87c]
mov eax, dword [esp + 0x87c]
cmp eax, 0xa5
jb 0x41e730
lea eax, [esp + 0x10a8]
lea edx, [esp + 0x7c]
mov ecx, 0x28
mov edi, eax
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
lea edx, [esp + 0x11c]
mov ecx, 1
lea edi, [esp + 0x1148]
xchg esi, edx
rep movsw word es:[edi], word [esi]
xchg esi, edx
mov dword [esp + 0x7c], 0xc47ac29c
mov dword [esp + 0x80], 0xd875c666
mov dword [esp + 0x84], 0xdc68da66
mov dword [esp + 0x88], 0xd079de62
mov dword [esp + 0x8c], 0xd47fd265
mov dword [esp + 0x90], 0x2871d68a
mov dword [esp + 0x94], 0x2c922a8f
mov dword [esp + 0x98], 0x208a2e8e
mov dword [esp + 0x9c], 0x2452228d
mov dword [esp + 0xa0], 0x38592650
mov dword [esp + 0xa4], 0x3c973a49
mov dword [esp + 0xa8], 0x308a3e62
mov dword [esp + 0xac], 0x348f3285
mov dword [esp + 0xb0], 0x888368a
mov dword [esp + 0xb4], 0xca70ab2
mov dword [esp + 0xb8], 0xbd0e5d
mov dword [esp + 0xbc], 0x4a502be
mov dword [esp + 0xc0], 0x18bb06bc
mov dword [esp + 0xc4], 0x1ca81abc
mov dword [esp + 0xc8], 0x10401eb1
mov dword [esp + 0xcc], 0x14a712a4
mov dword [esp + 0xd0], 0x68a816a9
mov dword [esp + 0xd4], 0x6cd06ad6
mov dword [esp + 0xd8], 0x60266ec1
mov dword [esp + 0xdc], 0x64146212
mov dword [esp + 0xe0], 0x78246610
mov dword [esp + 0xe4], 0x7c3d7a3f
mov dword [esp + 0xe8], 0x700b7e0d
mov dword [esp + 0xec], 0x74007200
mov dword [esp + 0xf0], 0x48067604
mov dword [esp + 0xf4], 0x4cef4a38
mov dword [esp + 0xf8], 0x400d4e3e
mov dword [esp + 0xfc], 0x440b4209
mov dword [esp + 0x100], 0x58374604
mov dword [esp + 0x104], 0x5c2a5a29
mov dword [esp + 0x108], 0x502b5e2d
mov dword [esp + 0x10c], 0x54215213
mov dword [esp + 0x110], 0xa8215614
mov dword [esp + 0x114], 0xacdcaadf
mov dword [esp + 0x118], 0xa003aedb
mov word [esp + 0x11c], 0xa2a1
mov byte [esi + 4], 0
mov word [esi + 2], 0
mov dword [esp + 0x87c], 0
mov ecx, dword [esp + 0x87c]
cmp ecx, 0xa4
ja 0x41e9dd
nop
mov ecx, dword [esp + 0x87c]
mov edx, dword [esp + 0x87c]
movzx edx, byte [esp + edx + 0x7c]
add ecx, 0x47505be9
xor ecx, edx
mov dword [esp + 0xa7c], ecx
mov ecx, dword [esp + 0xa7c]
add cl, 0xd8
mov edx, dword [esp + 0x87c]
mov byte [esp + edx + 0x7c], cl
inc dword [esp + 0x87c]
mov ecx, dword [esp + 0x87c]
cmp ecx, 0xa5
jb 0x41e990
lea edx, [esp + 0x1006]
lea ebp, [esp + 0x7c]
mov esi, ebp
mov edi, edx
mov ecx, 0x28
xchg esi, esi
rep movsd dword es:[edi], dword [esi]
xchg esi, esi
lea esi, [esp + 0x11c]
lea edi, [esp + 0x10a6]
mov ecx, 1
xchg esi, esi
rep movsw word es:[edi], word [esi]
xchg esi, esi
lea ecx, [esp + 0xe7e]
mov dword [esp + 0x68], ecx
lea ecx, [esp + 0xf20]
mov dword [esp + 0x6c], ecx
mov dword [esp + 0x70], ebx
mov dword [esp + 0x74], eax
mov dword [esp + 0x78], edx
xor ecx, ecx
xor eax, eax
mov dword [esp + 0x34], 0
cmp ecx, 0x14
setne al
lea esi, [esp + 0x11c]
jmp dword [eax*4 + 0x4486a0]
jmp dword [0x4486ac]
mov eax, dword [esp + 0x34]
mov eax, dword [esp + eax + 0x68]
mov dword [esp + 0x7c], 0x5d6c5f6e
mov dword [esp + 0x80], 0x59685b6a
mov dword [esp + 0x84], 0x65546756
mov dword [esp + 0x88], 0x61386352
mov word [esp + 0x8c], 0x6f6e
mov byte [esi - 0x8a], 0
mov dword [esi - 0x8e], 0
mov dword [esp + 0x18], 0
mov ecx, dword [esp + 0x18]
cmp ecx, 0x16
ja 0x41eb0b
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x18]
movzx edx, byte [esp + edx + 0x7c]
add ecx, 0x36127358
xor ecx, edx
mov dword [esp + 0xa7c], ecx
mov ecx, dword [esp + 0xa7c]
add cl, 0xfa
mov edx, dword [esp + 0x18]
mov byte [esp + edx + 0x7c], cl
inc dword [esp + 0x18]
mov ecx, dword [esp + 0x18]
cmp ecx, 0x17
jb 0x41ead0
movzx edx, word [eax]
lea ecx, [esp + 0x87c]
test dx, dx
je 0x41eb31
add eax, 2
nop
nop
nop
mov word [ecx], dx
add ecx, 2
movzx edx, word [eax]
add eax, 2
test dx, dx
jne 0x41eb20
mov word [ecx], 0
movzx eax, word [esp + 0x7c]
test ax, ax
je 0x41eb61
lea edx, [esp + 0x7e]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [ecx], ax
add ecx, 2
movzx eax, word [edx]
add edx, 2
test ax, ax
jne 0x41eb50
mov word [ecx], 0
jmp case.0x41ea4c.3
mov word [edx], 0
jmp dword [0x4486b0]
mov eax, dword [esp + 0x34]
mov eax, dword [esp + eax + 0x68]
mov dword [esp + 0x7c], 0x5d6c5f6e
mov dword [esp + 0x80], 0x59685b6a
mov dword [esp + 0x84], 0x65546756
mov dword [esp + 0x88], 0x61386352
mov word [esp + 0x8c], 0x6f6e
mov byte [esi - 0x8a], 0
mov dword [esi - 0x8e], 0
mov dword [esp + 0x18], 0
mov ecx, dword [esp + 0x18]
cmp ecx, 0x16
ja 0x41ec1b
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x18]
movzx edx, byte [esp + edx + 0x7c]
add ecx, 0x36127358
xor ecx, edx
mov dword [esp + 0xa7c], ecx
mov ecx, dword [esp + 0xa7c]
add cl, 0xfa
mov edx, dword [esp + 0x18]
mov byte [esp + edx + 0x7c], cl
inc dword [esp + 0x18]
mov ecx, dword [esp + 0x18]
cmp ecx, 0x17
jb 0x41ebe0
movzx ecx, word [eax]
test cx, cx
je 0x41ec50
add eax, 2
lea edx, [esp + 0x87c]
nop
nop
nop
mov word [edx], cx
add edx, 2
movzx ecx, word [eax]
add eax, 2
test cx, cx
jne 0x41ec30
jmp 0x41ec57
lea edx, [esp + 0x87c]
mov word [edx], 0
movzx eax, word [esp + 0x7c]
test ax, ax
je 0x41eb70
lea ecx, [esp + 0x7e]
nop
nop
mov word [edx], ax
add edx, 2
movzx eax, word [ecx]
add ecx, 2
test ax, ax
jne 0x41ec70
jmp 0x41eb70
mov di, 0x31
xor eax, eax
cmp di, 0x35
setb al
jmp dword [eax*4 + 0x4486b8]
inc edi
xor eax, eax
cmp di, 0x35
setb al
mov edx, dword [esp + 0xc]
jmp dword [eax*4 + 0x4486b8]
mov dword [esp + 0xc], edx
mov word [edx - 2], di
lea eax, [esp + 0x40]
lea ecx, [esp + 0x87c]
push dword [esp + 0x58]
push 0
push 0x20019
push eax
push ecx
call fcn.004422a0
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x4486e0]
mov dword [esp + 0x50], edi
mov dword [esp + 0x54], 0x800
mov dword [esp + 0x38], 0x400
mov dword [esp + 0x10], 0
xor edi, edi
jmp dword [0x4486ec]
lea eax, [esp + 0x38]
lea esi, [esp + 0xa7c]
lea ecx, [esp + 0x3c]
lea edx, [esp + 0x54]
push eax
push esi
push ecx
push edx
push ebp
push edi
push dword [esp + 0x58]
call fcn.004429b0
add esp, 0x1c
jmp dword [0x4486f4]
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x4486f8]
mov eax, dword [esp + 0x3c]
mov ecx, dword [case.0x41f29b.20]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp ecx
test byte [esp + 0x10], 1
sete cl
cmp eax, 1
sete al
and al, cl
movzx eax, al
jmp dword [eax*4 + 0x448710]
xor eax, eax
cmp dword [esp + 0x3c], 3
sete al
jmp dword [eax*4 + 0x448720]
inc edi
jmp dword [0x4486ec]
mov dword [esp + 8], edi
mov dword [esp + 0x18], 0xce6ecc12
mov dword [esp + 0x1c], 0xca5ec86c
mov dword [esp + 0x20], 0xc653c446
mov dword [esp + 0x24], 0xc2c1c04b
lea eax, [esp + 0x28]
mov byte [eax + 2], 0
mov word [eax], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x12
ja 0x41ee1e
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 + 0x18]
add eax, 0xe310d02f
xor eax, ecx
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x30]
add al, 4
mov ecx, dword [esp]
mov byte [esp + ecx + 0x18], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x13
jb 0x41edf0
movzx edi, word [esp + 0x18]
test di, di
je 0x41ee6c
lea eax, [esp + 0x7c]
lea edx, [esp + 0x18]
mov ebp, eax
jmp 0x41ee48
movzx edi, word [edx]
test di, di
je 0x41ee6c
movzx ebx, word [eax]
test bx, bx
je 0x41ee6a
add eax, 2
add edx, 2
lea ecx, [ebp + 2]
cmp bx, di
je 0x41ee62
mov ebp, ecx
mov eax, ecx
je 0x41ee40
lea edx, [esp + 0x18]
jmp 0x41ee40
xor ebp, ebp
xor eax, eax
test ebp, ebp
setne al
jmp dword [eax*4 + 0x448718]
xor eax, eax
cmp dword [esp + 0x3c], 3
sete al
lea ebp, [esp + 0x7c]
mov edi, dword [esp + 8]
jmp dword [eax*4 + 0x448720]
mov dword [esp + 0x18], 0x68ca6a45
mov dword [esp + 0x1c], 0x6cd86ede
mov dword [esp + 0x20], 0x60d062e6
mov dword [esp + 0x24], 0x64c366d7
mov word [esp + 0x28], 0x7a65
mov dword [esp + 0x2a], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x15
ja 0x41ef1b
nop
nop
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 + 0x18]
add eax, 0x5477fa7f
xor eax, ecx
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x30]
mov ecx, eax
not ecx
and ecx, 0xea
and eax, 0x15
sub eax, ecx
mov ecx, dword [esp]
mov byte [esp + ecx + 0x18], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x16
jb 0x41eee0
movzx esi, word [esp + 0x18]
lea eax, [esp + 0x7c]
test si, si
mov dword [esp + 8], edi
je 0x41f06c
lea ecx, [esp + 0x7c]
lea edx, [esp + 0x18]
mov eax, ecx
jmp 0x41ef4c
movzx esi, word [edx]
test si, si
je 0x41f06c
movzx edi, word [ecx]
test di, di
je 0x41f066
add ecx, 2
add edx, 2
lea ebx, [eax + 2]
cmp di, si
je 0x41ef6a
mov eax, ebx
mov ecx, ebx
mov edi, dword [esp + 8]
je 0x41ef40
lea edx, [esp + 0x18]
jmp 0x41ef40
mov eax, dword [esp + 0x38]
cmp eax, 2
mov edi, dword [esp + 8]
jae 0x41ef8c
mov ebp, dword [esp + 4]
jmp 0x41f047
shr eax, 1
lea ecx, [eax - 1]
mov edx, eax
and edx, 3
je 0x41efd8
mov dword [esp + 0x10], ecx
xor edi, edi
lea esi, [esp + 0xa7c]
mov ebp, dword [esp + 4]
nop
nop
nop
nop
nop
nop
nop
movzx ebx, word [esi]
xor ecx, ecx
test bx, bx
setne cl
lea esi, [esi + ecx*2]
mov word [ebp], bx
add ebp, 2
inc edi
cmp edx, edi
jne 0x41efb0
mov dword [esp + 4], ebp
sub eax, edi
mov edi, dword [esp + 8]
mov ecx, dword [esp + 0x10]
cmp ecx, 3
mov ebp, dword [esp + 4]
jb 0x41f047
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ecx, word [esi]
xor edx, edx
test cx, cx
setne dl
lea edi, [esi + edx*2]
mov word [ebp], cx
movzx ecx, word [esi + edx*2]
xor edx, edx
test cx, cx
setne dl
lea esi, [edi + edx*2]
mov word [ebp + 2], cx
movzx ecx, word [edi + edx*2]
xor edx, edx
test cx, cx
setne dl
lea edi, [esi + edx*2]
mov word [ebp + 4], cx
movzx edx, word [esi + edx*2]
xor ecx, ecx
test dx, dx
setne cl
mov word [ebp + 6], dx
add ebp, 8
lea esi, [edi + ecx*2]
add eax, 0xfffffffc
jne 0x41eff0
mov edi, dword [esp + 8]
mov dword [ebp], 0x20003a
add ebp, 4
mov dword [esp + 4], ebp
mov al, 1
mov dword [esp + 0x10], eax
inc edi
lea ebp, [esp + 0x7c]
jmp dword [0x4486ec]
xor eax, eax
mov edi, dword [esp + 8]
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x448728]
inc edi
jmp dword [0x4486ec]
mov eax, dword [esp + 0x38]
cmp eax, 2
jae 0x41f093
mov edx, dword [esp + 4]
jmp 0x41f14d
shr eax, 1
lea ebx, [eax - 1]
mov esi, eax
lea ecx, [esp + 0xa7c]
and esi, 3
mov edx, dword [esp + 4]
je 0x41f0dc
mov dword [esp + 0x14], ebx
xor edi, edi
movzx ebx, word [ecx]
mov ebp, edx
xor edx, edx
test bx, bx
setne dl
lea ecx, [ecx + edx*2]
mov edx, ebp
mov word [ebp], bx
add edx, 2
inc edi
cmp esi, edi
jne 0x41f0b0
sub eax, edi
lea ebp, [esp + 0x7c]
mov edi, dword [esp + 8]
mov ebx, dword [esp + 0x14]
cmp ebx, 3
jb 0x41f14d
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ebp, edx
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
lea edx, [ebp + 8]
lea ecx, [esi + ecx*2]
add eax, 0xfffffffc
jne 0x41f0f0
lea ebp, [esp + 0x7c]
mov edi, dword [esp + 8]
mov word [edx], 0xa
add edx, 2
mov dword [esp + 4], edx
mov al, 1
mov dword [esp + 0x14], eax
inc edi
jmp dword [0x4486ec]
lea eax, [esp + 0x38]
lea ecx, [esp + 0xa7c]
lea edx, [esp + 0x3c]
lea esi, [esp + 0x54]
mov ebx, edi
lea edi, [esp + 0x7c]
push eax
push ecx
push edx
push esi
push edi
mov edi, ebx
push ebx
push dword [esp + 0x58]
call fcn.004429b0
add esp, 0x1c
jmp case.0x41ea4c.19
mov eax, dword [esp + 0x40]
mov dword [esp + 0x18], 0x7a79787f
mov dword [esp + 0x1c], 0
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 7
ja 0x41f210
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 + 0x18]
add ecx, 0x6ea68513
xor ecx, edx
mov dword [esp + 0x30], ecx
mov ecx, dword [esp + 0x30]
add cl, 0x93
mov edx, dword [esp]
mov byte [esp + edx + 0x18], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 8
jb 0x41f1e0
mov ecx, dword [0x44d0a8]
test ecx, ecx
je 0x41f250
mov edx, dword [esp + 0x18]
xor esi, esi
mov edi, dword [0x44d0ac]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [edi + esi*8], 0x625b6034
je 0x41f240
inc esi
cmp ecx, esi
jne 0x41f230
jmp 0x41f250
mov ecx, dword [edi + esi*8 + 4]
cmp ecx, edx
jne case.default.0x41f269
nop
nop
nop
nop
nop
nop
nop
nop
mov edi, dword [esp + 0x50]
inc edi
xor eax, eax
cmp di, 0x35
setb al
lea esi, [esp + 0x11c]
mov edx, dword [esp + 0xc]
jmp dword [eax*4 + 0x4486b8]
push eax
push 1
push dword [0x44d0b0]
push ecx
call fcn.0043f8b0
add esp, 0x10
mov edi, dword [esp + 0x50]
inc edi
xor eax, eax
cmp di, 0x35
setb al
lea esi, [esp + 0x11c]
mov edx, dword [esp + 0xc]
jmp dword [eax*4 + 0x4486b8]
mov eax, dword [case.0x41ea4c.14]
add dword [esp + 0x34], 4
nop
nop
nop
nop
nop
nop
jmp eax
xor eax, eax
cmp dword [esp + 0x34], 0x14
setne al
jmp dword [eax*4 + 0x4486a0]
mov eax, dword [esp + 0x58]
mov dword [esp + 0x7c], 0x7a79787f
mov dword [esp + 0x80], 0
mov dword [esp + 0x87c], 0
mov ecx, dword [esp + 0x87c]
cmp ecx, 7
ja 0x41f35a
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp + 0x87c]
mov edx, dword [esp + 0x87c]
movzx edx, byte [esp + edx + 0x7c]
add ecx, 0x6ea68513
xor ecx, edx
mov dword [esp + 0xa7c], ecx
mov ecx, dword [esp + 0xa7c]
add cl, 0x93
mov edx, dword [esp + 0x87c]
mov byte [esp + edx + 0x7c], cl
inc dword [esp + 0x87c]
mov ecx, dword [esp + 0x87c]
cmp ecx, 8
jb 0x41f310
mov ecx, dword [0x44d0a8]
test ecx, ecx
je 0x41f390
mov edx, dword [esp + 0x7c]
xor esi, esi
mov edi, dword [0x44d0ac]
cmp dword [edi + esi*8], 0x625b6034
je 0x41f380
inc esi
cmp ecx, esi
jne 0x41f370
jmp 0x41f390
mov ecx, dword [edi + esi*8 + 4]
cmp ecx, edx
jne 0x41f39a
nop
nop
nop
nop
nop
nop
nop
nop
mov edi, dword [esp + 0x48]
jmp dword [0x448730]
push eax
push 1
push dword [0x44d0b0]
push ecx
call fcn.0043f8b0
add esp, 0x10
mov edi, dword [esp + 0x48]
jmp dword [0x448730]
mov edx, dword [esp + 4]
mov word [edx], 0
mov eax, dword [esp + 0x14]
and al, 1
movzx eax, al
jmp dword [eax*4 + 0x448688]
movzx ecx, word [esp + 0x11ec]
xor ebp, ebp
test cx, cx
je 0x41f428
lea eax, [esp + 0x11ec]
jmp 0x41f402
add ebp, edx
movzx ecx, word [eax + 2]
add eax, 2
test cx, cx
mov edx, dword [esp + 4]
je 0x41f428
cmp eax, edx
jae 0x41f428
movzx esi, cx
cmp esi, 0x800
mov ecx, 3
sbb ecx, 0
mov edx, 1
cmp esi, 0x80
jb 0x41f3f0
mov edx, ecx
jmp 0x41f3f0
lea eax, [ebp + 1]
mov dword [esp + 0x10], eax
push eax
call fcn.00409a50
add esp, 4
mov edi, eax
lea ecx, [esp + 0x11ec]
cmp ecx, dword [esp + 4]
setb cl
mov dword [esp + 0xc], eax
test ebp, ebp
jle 0x41f527
mov edi, dword [esp + 0xc]
test cl, cl
je 0x41f527
mov edi, dword [esp + 0xc]
lea eax, [edi + ebp]
mov dword [esp + 8], eax
add dword [esp + 0x10], edi
lea edx, [esp + 0x11ee]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ebx, word [edx - 2]
test bx, bx
je 0x41f527
cmp bx, 0x7f
ja 0x41f4a0
mov byte [edi], bl
mov esi, 1
jmp 0x41f510
mov eax, edi
not eax
add eax, dword [esp + 0x10]
movzx ecx, bx
cmp eax, 2
jb 0x41f4e0
cmp ecx, 0x7ff
ja 0x41f4e0
mov eax, ebx
shr eax, 6
add al, 0xc0
mov byte [edi], al
and bl, 0x3f
or bl, 0x80
mov byte [edi + 1], bl
mov esi, 2
jmp 0x41f510
xor esi, esi
cmp eax, 3
jb 0x41f510
mov eax, ecx
shr eax, 0xc
or al, 0xe0
mov byte [edi], al
shr ecx, 6
and cl, 0x3f
or cl, 0x80
mov byte [edi + 1], cl
and bl, 0x3f
or bl, 0x80
mov byte [edi + 2], bl
mov esi, 3
nop
nop
nop
nop
nop
nop
add edi, esi
cmp edi, dword [esp + 8]
jae 0x41f527
lea eax, [edx + 2]
cmp edx, dword [esp + 4]
mov edx, eax
jb 0x41f480
mov byte [edi], 0
mov dword [esp + 0x7c], 0x6d606f5f
mov dword [esp + 0x80], 0x6175706b
mov dword [esp + 0x84], 0x5a56686f
mov dword [esp + 0x88], 0x59597495
mov dword [esp + 0x8c], 0x5a5f5052
mov dword [esp + 0x90], 0x5a56739d
mov dword [esp + 0x94], 0x5c445e40
mov dword [esp + 0x98], 0x35488549
mov dword [esp + 0x9c], 0xbf4a
mov byte [esp + 0xa0], 0
mov dword [esp + 0x87c], 0
mov eax, dword [esp + 0x87c]
cmp eax, 0x24
mov esi, dword [esp + 0xc]
ja 0x41f603
nop
nop
nop
mov eax, dword [esp + 0x87c]
mov ecx, dword [esp + 0x87c]
movzx ecx, byte [esp + ecx + 0x7c]
lea edx, [eax + ecx]
add eax, 0x56
and eax, ecx
add eax, eax
sub edx, eax
add edx, 0x4497c456
mov dword [esp + 0xa7c], edx
mov eax, dword [esp + 0xa7c]
add al, 0x38
mov ecx, dword [esp + 0x87c]
mov byte [esp + ecx + 0x7c], al
inc dword [esp + 0x87c]
mov eax, dword [esp + 0x87c]
cmp eax, 0x25
jb 0x41f5b0
lea eax, [esp + 0x7c]
mov ecx, dword [esp + 0x2200]
push ebp
push esi
push eax
call fcn.0040a440
mov dword [esp + 0x14], eax
jmp dword [0x448748]
jmp dword [0x448750]
mov eax, dword [esp + 0x14]
and al, 1
add esp, 0x21ec
pop esi
pop edi
pop ebx
pop ebp
ret
push esi
call fcn.00409a60
add esp, 4
push esi
call fcn.00409a60
add esp, 4
jmp dword [0x44875c]
int3
xor ebx, ebx
test ecx, ecx
sete bl
xor edx, edx
jmp dword [ebx*4 + 0x448e6c]
mov ecx, dword [case.0x41f29b.44]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp ecx
jmp dword [edx*4 + 0x448dcc]
mov dword [esp + 0x50], 0x78cd7ac9
mov dword [esp + 0x54], 0x7cb47ebc
mov dword [esp + 0x58], 0x60d462b4
mov dword [esp + 0x5c], 0x64d166d5
mov dword [esp + 0x60], 0x68d76adc
mov dword [esp + 0x64], 0x6cae6ea4
mov dword [esp + 0x68], 0x509b52aa
mov dword [esp + 0x6c], 0x54e55698
mov dword [esp + 0x70], 0x58e75a90
mov dword [esp + 0x74], 0x5cec5eee
mov dword [esp + 0x78], 0x40f74297
mov dword [esp + 0x7c], 0x448646fa
mov dword [esp + 0x80], 0x488e4af3
mov dword [esp + 0x84], 0x4c824ef5
mov dword [esp + 0x88], 0x309432e4
mov dword [esp + 0x8c], 0x34a436a7
mov dword [esp + 0x90], 0x38a83aa2
mov dword [esp + 0x94], 0x3cab3e93
mov dword [esp + 0x98], 0x20982281
mov dword [esp + 0x9c], 0x24b52688
mov dword [esp + 0xa0], 0x28b82a81
mov dword [esp + 0xa4], 0x2cb82eb2
mov dword [esp + 0xa8], 0x10d41291
mov dword [esp + 0xac], 0x14811684
mov dword [esp + 0xb0], 0x18be1a83
mov dword [esp + 0xb4], 0x1c8b1e8b
mov dword [esp + 0xb8], 0xa602a7
mov dword [esp + 0xbc], 0x4900697
mov dword [esp + 0xc0], 0x8980aac
mov dword [esp + 0xc4], 0xcb30e9b
mov dword [esp + 0xc8], 0xf061f2b8
mov dword [esp + 0xcc], 0xf465f658
mov dword [esp + 0xd0], 0xf86ffa62
mov dword [esp + 0xd4], 0xfc53fe58
mov dword [esp + 0xd8], 0xe0e3e251
mov byte [esp + 0xdc], 0
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 0x8c
ja 0x41fb43
mov ecx, dword [esp]
mov edx, dword [esp]
movzx edx, byte [esp + edx + 0x50]
add ecx, 0x90821487
xor ecx, edx
mov dword [esp + 0x18], ecx
mov ecx, dword [esp + 0x18]
add cl, 0xe
mov edx, dword [esp]
mov byte [esp + edx + 0x50], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 0x8d
jb case.default.0x41fb5d
lea ecx, [esp + 0x10]
lea edx, [esp + 0x50]
push 0
push 0
push eax
push ecx
push edx
call fcn.004422a0
add esp, 0x14
shr eax, 0x1f
jmp dword [eax*4 + 0x448de4]
lea eax, [esp + 0x4c]
lea ecx, [esp + 0x38]
push 0
push 0
push 0
push 0
push eax
push ecx
push 0
push 0
push dword [esp + 0x30]
call fcn.004426c0
add esp, 0x24
mov ecx, dword [case.0x41fb5d.5]
nop
nop
nop
nop
jmp ecx
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x448dfc]
jmp dword [0x448e4c]
mov ecx, 4
xor ebx, ebx
cmp ecx, 4
setb bl
mov eax, 0x20119
xor edx, edx
jmp dword [ebx*4 + 0x448e64]
mov eax, dword [esp + 0x38]
mov ecx, eax
and ecx, 0x7ffffefb
mov edx, eax
and edx, 0x104
or eax, 0x104
imul eax, edx
xor edx, 0x104
imul edx, ecx
add eax, edx
mov ecx, esi
and ecx, 0x3408df13
mov edx, esi
xor edx, 0x3408df13
lea ecx, [edx + ecx*2]
lea eax, [ecx + eax*2]
add eax, 0xcbf720ed
push eax
push dword [esp + 0xc]
call fcn.0043f7e0
add esp, 8
mov dword [esp + 8], eax
lea edi, [eax + esi*2]
xor esi, esi
xor eax, eax
cmp esi, dword [esp + 0x38]
setb al
jmp dword [eax*4 + 0x448e04]
mov word [edi], 0
mov eax, edi
mov esi, dword [esp + 8]
xor eax, esi
not esi
and esi, edi
add esi, esi
sub esi, eax
sar esi, 1
jmp dword [0x448e4c]
mov eax, dword [esp + 0x10]
mov dword [esp + 0x50], 0x7a79787f
mov dword [esp + 0x54], 0
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 7
ja 0x41fcb0
mov ecx, dword [esp]
mov edx, dword [esp]
movzx edx, byte [esp + edx + 0x50]
add ecx, 0x6ea68513
xor ecx, edx
mov dword [esp + 0x18], ecx
mov ecx, dword [esp + 0x18]
add cl, 0x93
mov edx, dword [esp]
mov byte [esp + edx + 0x50], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 8
jb 0x41fc80
mov ecx, dword [0x44d0a8]
test ecx, ecx
je 0x420020
mov edx, dword [esp + 0x50]
xor ebx, ebx
mov ebp, dword [0x44d0ac]
nop
nop
nop
nop
nop
nop
cmp dword [ebp + ebx*8], 0x625b6034
je 0x41fff8
inc ebx
cmp ecx, ebx
jne 0x41fcd0
jmp 0x420020
inc esi
xor eax, eax
cmp esi, dword [esp + 0x38]
setb al
jmp dword [eax*4 + 0x448e04]
mov ebp, dword [esp + 0x4c]
mov eax, ebp
inc eax
lea eax, [ebp + ebp + 2]
jns 0x41fd13
mov eax, 0xffffffff
push eax
call fcn.00409a50
add esp, 4
mov ebx, eax
mov dword [esp + 0x48], ebp
lea eax, [esp + 0x48]
push eax
push ebx
push esi
push dword [esp + 0x1c]
call fcn.004423d0
add esp, 0x10
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x448e0c]
jmp dword [0x448e34]
lea eax, [esp + 0x34]
push dword [esp + 0x10]
push 0
push 0x20019
push eax
push ebx
call fcn.004422a0
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x448e14]
mov dword [esp + 0x44], 0x800
mov dword [esp + 0x18], 0x16bc14d7
mov dword [esp + 0x1c], 0x1aa918a4
mov dword [esp + 0x20], 0x1ebc1cb7
mov dword [esp + 0x24], 0xe22fe0a6
mov dword [esp + 0x28], 0xe648e442
mov dword [esp + 0x2c], 0xeae9e842
mov dword [esp + 0x30], 0
mov dword [esp + 4], 0
mov eax, dword [esp + 4]
cmp eax, 0x1b
ja 0x41fe01
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 4]
mov ecx, dword [esp + 4]
movzx ecx, byte [esp + ecx + 0x18]
add eax, 0x3881773
xor eax, ecx
mov dword [esp], eax
mov eax, dword [esp]
add al, 0xa0
mov ecx, dword [esp + 4]
mov byte [esp + ecx + 0x18], al
inc dword [esp + 4]
mov eax, dword [esp + 4]
cmp eax, 0x1c
jb 0x41fdd0
lea eax, [esp + 0x44]
lea ecx, [esp + 0x18]
push eax
lea eax, [esp + 0x54]
push eax
push 0
push ecx
push dword [esp + 0x44]
call fcn.00442cd0
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x448e1c]
jmp dword [0x448e28]
movzx eax, word [esp + 0x50]
test ax, ax
je 0x41fe51
lea ecx, [esp + 0x52]
nop
nop
mov word [edi], ax
add edi, 2
movzx eax, word [ecx]
add ecx, 2
test ax, ax
jne 0x41fe40
mov word [edi], 0xa
add edi, 2
jmp dword [0x448e28]
mov eax, dword [esp + 0x34]
mov dword [esp + 0xc], eax
mov dword [esp + 0x18], 0x7a79787f
mov dword [esp + 0x1c], 0
mov dword [esp + 4], 0
mov eax, dword [esp + 4]
cmp eax, 7
ja 0x41fec1
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 4]
mov ecx, dword [esp + 4]
movzx ecx, byte [esp + ecx + 0x18]
add eax, 0x6ea68513
xor eax, ecx
mov dword [esp], eax
mov eax, dword [esp]
add al, 0x93
mov ecx, dword [esp + 4]
mov byte [esp + ecx + 0x18], al
inc dword [esp + 4]
mov eax, dword [esp + 4]
cmp eax, 8
jb 0x41fe90
mov ecx, dword [0x44d0a8]
test ecx, ecx
je case.0x41fe23.3
mov edx, dword [esp + 0x18]
xor ebp, ebp
mov eax, dword [0x44d0ac]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [eax + ebp*8], 0x625b6034
je 0x41fef0
inc ebp
cmp ecx, ebp
jne 0x41fee0
jmp case.0x41fe23.3
mov eax, dword [eax + ebp*8 + 4]
cmp eax, edx
je case.0x41fe23.3
push dword [esp + 0xc]
push 1
push dword [0x44d0b0]
push eax
call fcn.0043f8b0
add esp, 0x10
nop
nop
nop
mov edx, dword [esp + 0x34]
mov dword [esp + 0x18], 0x7a79787f
mov dword [esp + 0x1c], 0
mov dword [esp + 4], 0
mov eax, dword [esp + 4]
cmp eax, 7
ja 0x41ff71
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 4]
mov ecx, dword [esp + 4]
movzx ecx, byte [esp + ecx + 0x18]
add eax, 0x6ea68513
xor eax, ecx
mov dword [esp], eax
mov eax, dword [esp]
add al, 0x93
mov ecx, dword [esp + 4]
mov byte [esp + ecx + 0x18], al
inc dword [esp + 4]
mov eax, dword [esp + 4]
cmp eax, 8
jb 0x41ff40
mov dword [esp + 0xc], edx
mov ecx, dword [0x44d0a8]
test ecx, ecx
je 0x41ffb0
mov edx, dword [esp + 0x18]
xor ebp, ebp
mov eax, dword [0x44d0ac]
nop
nop
nop
nop
nop
nop
cmp dword [eax + ebp*8], 0x625b6034
je 0x41ffa0
inc ebp
cmp ecx, ebp
jne 0x41ff90
jmp 0x41ffb0
mov eax, dword [eax + ebp*8 + 4]
cmp eax, edx
jne 0x41ffc2
nop
nop
nop
nop
nop
nop
nop
nop
jmp dword [0x448e30]
jmp dword [0x448e34]
jmp dword [0x448e40]
push dword [esp + 0xc]
push 1
push dword [0x44d0b0]
push eax
call fcn.0043f8b0
add esp, 0x10
jmp dword [0x448e30]
push ebx
call fcn.00409a60
add esp, 4
push ebx
call fcn.00409a60
add esp, 4
jmp dword [0x448e48]
mov ecx, dword [ebp + ebx*8 + 4]
cmp ecx, edx
je 0x420020
push eax
push 1
push dword [0x44d0b0]
push ecx
call fcn.0043f8b0
add esp, 0x10
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
lea eax, [esp + 4]
push eax
call fcn.004418f0
add esp, 4
jmp case.0x41fe23.12
lea eax, [esp + 4]
push eax
call fcn.004418f0
add esp, 4
jmp dword [0x448e54]
mov eax, dword [esp + 0x10]
mov dword [esp + 0x50], 0x7a79787f
mov dword [esp + 0x54], 0
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 7
ja 0x4200a0
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp]
mov edx, dword [esp]
movzx edx, byte [esp + edx + 0x50]
add ecx, 0x6ea68513
xor ecx, edx
mov dword [esp + 0x18], ecx
mov ecx, dword [esp + 0x18]
add cl, 0x93
mov edx, dword [esp]
mov byte [esp + edx + 0x50], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 8
jb 0x420070
mov ecx, dword [0x44d0a8]
test ecx, ecx
je 0x420030
mov edx, dword [esp + 0x50]
xor ebx, ebx
mov ebp, dword [0x44d0ac]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [ebp + ebx*8], 0x625b6034
je 0x4200e0
inc ebx
cmp ecx, ebx
jne 0x4200c0
jmp 0x420030
mov ecx, dword [ebp + ebx*8 + 4]
cmp ecx, edx
je 0x420030
push eax
push 1
push dword [0x44d0b0]
push ecx
call fcn.0043f8b0
add esp, 0x10
jmp 0x420030
cmp dword [esp + 4], 1
sete cl
and al, cl
movzx eax, al
jmp dword [eax*4 + 0x448e5c]
xor ecx, ecx
xor ebx, ebx
cmp ecx, 4
setb bl
mov eax, 0x20119
xor edx, edx
jmp dword [ebx*4 + 0x448e64]
mov ecx, 2
xor ebx, ebx
cmp ecx, 4
setb bl
mov eax, 0x20119
xor edx, edx
jmp dword [ebx*4 + 0x448e64]
jmp dword [0x448ddc]
xor eax, eax
mov esi, dword [esp + 8]
cmp edi, esi
setne al
xor ebx, ebx
jmp dword [eax*4 + 0x448e74]
movzx ecx, word [esi]
test cx, cx
je 0x42029d
mov eax, esi
xor esi, esi
jmp 0x42019e
add esi, edx
movzx ecx, word [eax + 2]
add eax, 2
test cx, cx
je 0x4201c8
test edi, edi
je 0x4201a6
cmp eax, edi
jae 0x4201c8
movzx ebx, cx
cmp ebx, 0x800
mov ecx, 3
sbb ecx, 0
mov edx, 1
cmp ebx, 0x80
jb 0x420190
mov edx, ecx
jmp 0x420190
lea ebp, [esi + 1]
push ebp
call fcn.00409a50
add esp, 4
test esi, esi
jle 0x4202af
lea ecx, [eax + esi]
mov dword [esp + 0x40], ecx
add ebp, eax
mov edx, dword [esp + 8]
mov dword [esp + 0x14], eax
mov ecx, eax
mov dword [esp + 0xc], ebp
jmp 0x42021a
mov byte [ecx], bl
mov ebp, 1
add ecx, ebp
add edx, 2
cmp ecx, dword [esp + 0x40]
mov ebp, dword [esp + 0xc]
jae 0x420297
test edi, edi
je 0x420222
cmp edx, edi
jae 0x420297
movzx ebx, word [edx]
test bx, bx
je 0x420297
cmp bx, 0x7f
jbe 0x420200
mov eax, ecx
not eax
add eax, ebp
movzx ebp, bx
cmp eax, 2
jb 0x420260
cmp ebp, 0x7ff
ja 0x420260
mov eax, ebx
shr eax, 6
add al, 0xc0
mov byte [ecx], al
and bl, 0x3f
or bl, 0x80
mov byte [ecx + 1], bl
mov ebp, 2
jmp 0x420207
mov dword [esp + 0x3c], ebp
xor ebp, ebp
cmp eax, 3
jb 0x420207
mov ebp, dword [esp + 0x3c]
mov eax, ebp
shr eax, 0xc
or al, 0xe0
mov byte [ecx], al
mov eax, ebp
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [ecx + 1], al
and bl, 0x3f
or bl, 0x80
mov byte [ecx + 2], bl
mov ebp, 3
jmp 0x420207
mov edi, dword [esp + 0x14]
jmp 0x4202b3
xor esi, esi
push 1
call fcn.00409a50
add esp, 4
mov edi, eax
mov ecx, eax
jmp 0x4202b3
mov ecx, eax
mov edi, eax
mov byte [ecx], 0
mov dword [esp + 0x50], 0x2b242a4f
mov dword [esp + 0x54], 0x56245c37
mov dword [esp + 0x58], 0x233e2562
mov byte [esp + 0x5c], 0xb4
mov dword [esp + 0x5d], 0
mov word [esp + 0x61], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x12
ja 0x42032e
nop
nop
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 + 0x50]
add eax, 0xd4a58ae2
xor eax, ecx
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x18]
add al, 0xa6
mov ecx, dword [esp]
mov byte [esp + ecx + 0x50], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x13
jb 0x420300
lea eax, [esp + 0x50]
mov ecx, dword [esp + 0x864]
push esi
push edi
push eax
call fcn.0040a440
mov ebx, eax
mov esi, dword [esp + 8]
jmp dword [0x448e7c]
push edi
call fcn.00409a60
add esp, 4
push esi
call fcn.0043db40
add esp, 4
mov eax, ebx
add esp, 0x850
pop esi
pop edi
pop ebx
pop ebp
ret
int3
lea ecx, [esp + 0x48]
push 0x410
call fcn.0043de20
not eax
shr eax, 0x1f
xor ebx, ebx
jmp dword [eax*4 + 0x448e8c]
mov dword [esp + 0x5c], 0xb32f90c
mov dword [esp + 0x60], 0x1f5d2ef
mov dword [esp + 0x64], 0xf5fcf0d0
mov dword [esp + 0x68], 0xe8f1ffdc
mov dword [esp + 0x6c], 0xf1dac3ed
mov dword [esp + 0x70], 0xe0c7dfc4
mov dword [esp + 0x74], 0xe3f8c7f9
mov dword [esp + 0x78], 0xefd6edc2
mov dword [esp + 0x7c], 0xcfc3ffc1
mov dword [esp + 0x80], 0xd7f29ac0
mov dword [esp + 0x84], 0xac9df6f0
mov word [esp + 0x88], 0
mov byte [esp + 0x8a], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x2e
ja 0x42095e
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
mov ecx, dword [esp]
movzx ecx, byte [esp + ecx + 0x5c]
add eax, 0x5d2e57fc
xor eax, ecx
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x3c]
add al, 0x75
mov ecx, dword [esp]
mov byte [esp + ecx + 0x5c], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x2f
jb 0x420930
lea eax, [esp + 0x3c]
lea ecx, [esp + 0x48]
push 0
push 0x2b
push edi
push eax
call fcn.0043e420
mov ebx, dword [esp + 0x3c]
mov ebp, dword [esp + 0x40]
xor eax, eax
cmp ebx, ebp
sete al
mov dword [esp + 0x28], ebp
jmp dword [eax*4 + 0x448e94]
mov eax, ebp
sub eax, ebx
sar eax, 2
imul eax, eax, 0x421
push eax
call fcn.00409a50
add esp, 4
jmp dword [0x448ea4]
mov dword [esp + 0x1c], 0
lea ecx, [esp + 0x5d]
mov dword [esp + 0x20], ecx
mov ecx, eax
xor eax, eax
cmp ebx, ebp
setne al
mov dword [esp + 0x14], ecx
mov esi, ecx
mov edx, edi
jmp dword [eax*4 + 0x448ebc]
mov ebx, dword [esp + 0x1c]
mov eax, ebx
and al, 1
movzx eax, al
jmp dword [eax*4 + 0x448ec4]
jmp dword [0x448f34]
mov ebx, dword [esp + 0x2c]
add ebx, 4
xor eax, eax
mov ebp, dword [esp + 0x28]
cmp ebx, ebp
setne al
jmp dword [eax*4 + 0x448ebc]
mov edi, esi
mov dword [esp + 0x2c], ebx
mov esi, dword [ebx]
push 0x400
push 0
push edx
mov ebx, edx
call fcn.00409ad0
add esp, 0xc
mov eax, esp
lea ecx, [esp + 0x48]
push eax
push 0x400
mov ebp, ebx
push ebx
push esi
call fcn.0043e2b0
cmp eax, 0xc0000000
setae al
cmp dword [esp], 0
sete cl
or cl, al
movzx eax, cl
jmp dword [eax*4 + 0x448ecc]
mov eax, 1
jmp 0x420a62
xor eax, eax
mov ecx, dword [case.0x420984.19]
mov edx, dword [esp + 0x20]
mov dword [esp + 0x24], edx
mov esi, edi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp ecx
mov edx, ebp
jmp dword [eax*4 + 0x448ee4]
mov byte [esp + 0x45b], 0
movzx eax, byte [esp + 0x5c]
xor ecx, ecx
test al, al
je case.0x41f29b.123
mov ecx, edx
cmp al, 0x2e
je case.0x41f29b.123
movzx eax, byte [ecx + 1]
inc ecx
test al, al
jne 0x420aa0
xor ecx, ecx
xor eax, eax
test ecx, ecx
setne al
jmp dword [eax*4 + 0x448eec]
movzx eax, byte [ecx + 1]
inc ecx
xor ebx, ebx
test al, al
mov edi, ecx
je 0x420ae3
nop
nop
nop
nop
nop
nop
cmp al, 0x2e
je 0x420adf
movzx eax, byte [ecx + 1]
inc ecx
test al, al
jne 0x420ad0
jmp 0x420ae1
mov ebx, ecx
mov ecx, edi
xor eax, eax
test ebx, ebx
setne al
mov dword [esp + 0x34], edi
jmp dword [eax*4 + 0x448ef4]
mov edx, ebx
sub edx, ecx
mov eax, edx
and eax, 3
mov ebp, edx
or ebp, 3
imul ebp, eax
xor eax, 3
mov ecx, edx
and ecx, 0xfffffffc
imul ecx, eax
add ebp, ecx
shr ebp, 2
movzx eax, byte [ebx - 1]
cmp eax, 0x3d
je 0x420b24
cmp eax, 0x2e
jne 0x420b25
dec ebp
mov eax, edi
movzx eax, byte [edi + edx - 2]
cmp eax, 0x3d
mov dword [esp + 0x18], edx
mov dword [esp + 0x58], esi
je 0x420b3e
cmp eax, 0x2e
jne 0x420b3f
dec ebp
mov dword [esp + 0x54], ebp
lea eax, [ebp + 1]
push eax
call fcn.00409a50
add esp, 4
mov dword [esp + 0x30], eax
cmp ebx, edi
je 0x420c40
mov ebp, edi
xor edi, edi
mov esi, 2
jmp 0x420b86
mov edi, ebx
lea eax, [esi + 4]
add esi, 2
cmp esi, edx
mov esi, eax
mov ebp, dword [esp + 0x34]
jae 0x420c40
movzx eax, byte [ebp + esi - 2]
push eax
call fcn.004164c0
add esp, 4
mov ebx, eax
movzx eax, byte [ebp + esi - 1]
push eax
call fcn.004164c0
add esp, 4
shl bl, 2
mov ah, al
shr ah, 4
and ah, 3
or ah, bl
mov ecx, ebp
lea ebx, [edi + 1]
mov edx, dword [esp + 0x30]
mov dword [esp + 0x38], edi
mov byte [edx + edi], ah
mov ebp, edx
mov edx, dword [esp + 0x18]
cmp esi, edx
jae 0x420b70
mov byte [esp + 0xf], al
movzx eax, byte [ecx + esi]
push eax
call fcn.004164c0
mov edx, dword [esp + 0x1c]
add esp, 4
cmp al, 0x40
mov edi, ebx
je 0x420b72
movzx ecx, byte [esp + 0xf]
shl cl, 4
mov ebx, eax
shr al, 2
and al, 0xf
or al, cl
mov ecx, dword [esp + 0x38]
lea edi, [ecx + 2]
mov byte [ebp + ecx + 1], al
lea eax, [esi + 1]
cmp eax, edx
jae 0x420b72
mov eax, dword [esp + 0x34]
movzx eax, byte [eax + esi + 1]
push eax
call fcn.004164c0
mov edx, dword [esp + 0x1c]
add esp, 4
cmp al, 0x40
je 0x420b72
shl bl, 6
add al, bl
mov edi, dword [esp + 0x38]
mov byte [ebp + edi + 2], al
add edi, 3
jmp 0x420b72
mov eax, dword [esp + 0x54]
mov esi, dword [esp + 0x30]
mov byte [esi + eax], 0
push esi
call fcn.00402a00
add esp, 4
mov ebx, eax
jmp dword [0x448efc]
jmp dword [0x448f04]
push ebx
call fcn.004034b0
add esp, 4
xor ecx, ecx
test eax, eax
setne cl
lea edi, [esp + 0x5c]
mov ebp, dword [esp + 0x2c]
mov esi, dword [esp + 0x58]
jmp dword [ecx*4 + 0x448f14]
jmp 0x420d45
mov dword [esp], 0x83220e0b
mov word [esp + 4], 0
mov dword [esp + 0x10], 0
mov ecx, dword [esp + 0x10]
cmp ecx, 5
ja 0x420ce3
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x10]
movzx edx, byte [esp + edx]
add ecx, 0x6d359deb
xor ecx, edx
mov dword [esp + 8], ecx
mov ecx, dword [esp + 8]
add cl, 0x93
mov edx, dword [esp + 0x10]
mov byte [esp + edx], cl
inc dword [esp + 0x10]
mov ecx, dword [esp + 0x10]
cmp ecx, 6
jb 0x420cb0
mov ecx, esp
push ecx
push eax
call fcn.00403270
add esp, 8
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x448f1c]
jmp 0x420d23
movzx ecx, byte [eax]
test cl, cl
je 0x420d1b
inc eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [esi], cl
inc esi
movzx ecx, byte [eax]
inc eax
test cl, cl
jne 0x420d10
mov word [esi], 0x203a
add esi, 2
movzx eax, byte [esp + 0x5c]
test al, al
mov ecx, dword [esp + 0x24]
je 0x420d3b
mov byte [esi], al
inc esi
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x420d30
mov byte [esi], 0xa
inc esi
mov al, 1
mov dword [esp + 0x1c], eax
push ebx
call fcn.00403a60
add esp, 4
mov ebx, ebp
add ebx, 4
xor eax, eax
mov ebp, dword [esp + 0x28]
cmp ebx, ebp
setne al
mov edx, edi
jmp dword [eax*4 + 0x448ebc]
push esi
call fcn.00409a60
add esp, 4
push esi
call fcn.00409a60
add esp, 4
jmp dword [0x448f0c]
xor esi, esi
test ebx, ebx
jne 0x420e5c
jmp 0x420e69
mov byte [esi], 0
mov dword [esp + 0x5c], 0xfaf5f482
mov dword [esp + 0x60], 0xeef8fbfe
mov dword [esp + 0x64], 0xede3e3e2
mov dword [esp + 0x68], 0xf7e583a0
mov dword [esp + 0x6c], 0x82aae9f2
mov dword [esp + 0x70], 0x948c93e8
mov dword [esp + 0x74], 0xa699d298
mov dword [esp + 0x78], 0x209b
mov byte [esp + 0x7c], 0
sub esi, dword [esp + 0x14]
mov dword [esp + 8], 0
mov eax, dword [esp + 8]
cmp eax, 0x20
ja 0x420e21
nop
nop
nop
nop
nop
mov eax, dword [esp + 8]
mov ecx, dword [esp + 8]
movzx ecx, byte [esp + ecx + 0x5c]
add eax, 0x45631c2b
xor eax, ecx
mov dword [esp], eax
mov eax, dword [esp]
add al, 0x98
mov ecx, dword [esp + 8]
mov byte [esp + ecx + 0x5c], al
inc dword [esp + 8]
mov eax, dword [esp + 8]
cmp eax, 0x21
jb 0x420df0
lea eax, [esp + 0x5c]
mov ecx, dword [esp + 0x470]
push esi
push dword [esp + 0x18]
push eax
call fcn.0040a440
mov ebx, eax
jmp dword [0x448f34]
push dword [esp + 0x14]
call fcn.00409a60
add esp, 4
and bl, 1
mov esi, ebx
mov ebx, dword [esp + 0x3c]
mov ebp, dword [esp + 0x40]
test ebx, ebx
je 0x420e69
cmp ebx, ebp
je 0x420e69
push ebx
call fcn.00409a60
add esp, 4
mov ebx, esi
lea ecx, [esp + 0x48]
call fcn.0043dfa0
mov eax, ebx
add esp, 0x45c
pop esi
pop edi
pop ebx
pop ebp
ret
int3
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0xb8
push eax
mov dword [ebp - 0x1c], esp
push eax
mov dword [ebp - 0x20], esp
sub esp, 0x18
mov edi, esp
push eax
mov dword [ebp - 0x34], esp
sub esp, 0xc
mov dword [ebp - 0x2c], esp
sub esp, 0x2c
mov dword [ebp - 0x50], esp
sub esp, 0x30
mov dword [ebp - 0x3c], esp
push eax
mov dword [ebp - 0x40], esp
push eax
mov dword [ebp - 0x30], esp
sub esp, 0x20
mov dword [ebp - 0x38], esp
push eax
mov dword [ebp - 0x48], esp
sub esp, 0x40
mov dword [ebp - 0x28], esp
sub esp, 0x44
mov dword [ebp - 0x18], esp
push eax
mov dword [ebp - 0x44], esp
push eax
mov dword [ebp - 0xc0], esp
sub esp, 0x28
mov dword [ebp - 0xb8], esp
sub esp, 8
mov dword [ebp - 0x60], esp
sub esp, 8
mov dword [ebp - 0xbc], esp
sub esp, 8
mov dword [ebp - 0x4c], esp
sub esp, 0x24
mov dword [ebp - 0xc4], esp
xor esi, esi
mov eax, 0x20219
mov ecx, 1
jmp dword [ecx*4 + 0x448f3c]
xor eax, eax
test esi, esi
sete al
jmp dword [eax*4 + 0x448f94]
mov edi, esi
mov eax, dword [ebp - 0x2c]
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov dword [eax], 0
xor eax, eax
nop
nop
nop
nop
nop
cmp word [edi + eax], 0
lea eax, [eax + 2]
jne 0x420f50
lea ecx, [edi + eax]
add ecx, 0xfffffffe
add eax, edi
mov edx, 1
sub edx, eax
and edx, edi
mov eax, edi
not eax
and eax, ecx
sub eax, edx
cmp eax, 0xffffffd9
mov edi, dword [ebp - 0x50]
jge 0x421369
mov eax, 0xffffffff
jmp 0x42136c
xor ebx, ebx
test ecx, ecx
sete bl
xor edx, edx
jmp dword [ebx*4 + 0x448f8c]
jmp dword [edx*4 + 0x448f3c]
mov dword [ebp - 0xb4], 0x95c0fa8
mov dword [ebp - 0xb0], 0x5530b57
mov dword [ebp - 0xac], 0x1ab075f
mov dword [ebp - 0xa8], 0x1d5003ac
mov dword [ebp - 0xa4], 0x19ba1fb7
mov dword [ebp - 0xa0], 0x15591b4f
mov dword [ebp - 0x9c], 0x114e1749
mov dword [ebp - 0x98], 0x6d44134b
mov dword [ebp - 0x94], 0x69ca6f33
mov dword [ebp - 0x90], 0x653b6bc5
mov dword [ebp - 0x8c], 0x61ca673a
mov dword [ebp - 0x88], 0x7d2163c9
mov dword [ebp - 0x84], 0x79217f2e
mov dword [ebp - 0x80], 0x75d47bdc
mov dword [ebp - 0x7c], 0x71c277d7
mov dword [ebp - 0x78], 0x4dcd73fe
mov dword [ebp - 0x74], 0x49e34fe8
mov dword [ebp - 0x70], 0x45f54bc4
mov dword [ebp - 0x6c], 0x41f147e7
mov word [ebp - 0x68], 0x4340
lea ecx, [ebp - 0x66]
mov byte [ecx + 2], 0
mov word [ecx], 0
mov dword [ebp - 0x14], 0
mov ecx, dword [ebp - 0x14]
cmp ecx, 0x50
ja 0x4210b4
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [ebp - 0x14]
mov edx, dword [ebp - 0x14]
movzx edx, byte [ebp + edx - 0xb4]
add ecx, 0x68b70321
xor ecx, edx
mov dword [ebp - 0x10], ecx
mov ecx, dword [ebp - 0x10]
add cl, 0xd3
mov edx, dword [ebp - 0x14]
mov byte [ebp + edx - 0xb4], cl
inc dword [ebp - 0x14]
mov ecx, dword [ebp - 0x14]
cmp ecx, 0x51
jb 0x421080
lea ecx, [ebp - 0x54]
lea edx, [ebp - 0xb4]
push 0
push 0
push eax
push ecx
push edx
call fcn.004422a0
add esp, 0x14
shr eax, 0x1f
jmp dword [eax*4 + 0x448f44]
push dword [ebp - 0x20]
push dword [ebp - 0x1c]
push 0
push 0
push 0
push 0
push 0
push 0
push dword [ebp - 0x54]
call fcn.004426c0
add esp, 0x24
not eax
shr eax, 0x1f
mov ebx, esi
jmp dword [eax*4 + 0x448f4c]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax]
lea eax, [ecx*2 + 2]
inc ecx
jns 0x421115
mov eax, 0xffffffff
push eax
call fcn.00409a50
add esp, 4
mov esi, eax
mov dword [edi], 0x3d94237b
mov dword [edi + 4], 0x39b23fb1
mov dword [edi + 8], 0x358e3b9b
mov dword [edi + 0xc], 0x31663780
mov dword [edi + 0x10], 0xdbe3393
mov dword [edi + 0x14], 0x90e0fb4
mov dword [ebp - 0x10], 0
mov eax, dword [ebp - 0x10]
cmp eax, 0x17
ja 0x42119c
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
movzx ecx, byte [edi + ecx]
lea edx, [eax + 0x8d]
and edx, ecx
add eax, ecx
add edx, edx
sub eax, edx
add eax, 0x6ac27c8d
mov dword [ebp - 0xb4], eax
mov eax, dword [ebp - 0xb4]
add al, 0x53
mov ecx, dword [ebp - 0x10]
mov byte [edi + ecx], al
inc dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
cmp eax, 0x18
jb 0x421160
push dword [ebp - 0x20]
push esi
push 0
push edi
push dword [ebp - 0x54]
call fcn.00442cd0
add esp, 0x14
shr eax, 0x1f
mov ebx, esi
jmp dword [eax*4 + 0x448f54]
xor ebx, ebx
jmp dword [0x448f5c]
push esi
call fcn.00409a60
add esp, 4
nop
nop
nop
nop
nop
mov eax, dword [ebp - 0x54]
mov dword [ebp - 0x24], eax
mov dword [ebp - 0xb4], 0x7a79787f
mov dword [ebp - 0xb0], 0
mov dword [ebp - 0x14], 0
mov eax, dword [ebp - 0x14]
cmp eax, 7
ja 0x421232
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x14]
movzx ecx, byte [ebp + ecx - 0xb4]
add eax, 0x6ea68513
xor eax, ecx
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
add al, 0x93
mov ecx, dword [ebp - 0x14]
mov byte [ebp + ecx - 0xb4], al
inc dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
cmp eax, 8
jb 0x421200
mov ecx, dword [0x44d0a8]
test ecx, ecx
je 0x421290
mov edx, dword [ebp - 0xb4]
xor esi, esi
mov eax, dword [0x44d0ac]
nop
nop
nop
nop
nop
nop
nop
cmp dword [eax + esi*8], 0x625b6034
je 0x42127b
inc esi
cmp ecx, esi
jne 0x421250
jmp 0x421290
mov ecx, 4
xor ebx, ebx
cmp ecx, 4
setb bl
mov eax, 0x20119
xor edx, edx
jmp dword [ebx*4 + 0x448f84]
mov eax, dword [eax + esi*8 + 4]
cmp eax, edx
jne case.default.0x421297
nop
nop
nop
nop
nop
nop
nop
nop
nop
xor eax, eax
test ebx, ebx
setne al
jmp dword [eax*4 + 0x448f64]
mov esi, dword [ebp - 0x34]
jmp dword [0x448f6c]
push esi
call fcn.004418f0
add esp, 4
push esi
call fcn.004418f0
add esp, 4
jmp dword [0x448f74]
mov ecx, esi
mov esi, ebx
cmp dword [ecx], 1
sete cl
and al, cl
movzx eax, al
jmp dword [eax*4 + 0x448f7c]
xor edx, edx
xor ebx, ebx
cmp edx, 4
setb bl
mov eax, 0x20119
xor ecx, ecx
jmp dword [ebx*4 + 0x448f84]
mov ecx, 2
xor ebx, ebx
cmp ecx, 4
setb bl
mov eax, 0x20119
xor edx, edx
jmp dword [ebx*4 + 0x448f84]
push dword [ebp - 0x24]
push 1
push dword [0x44d0b0]
push eax
call fcn.0043f8b0
add esp, 0x10
xor eax, eax
test ebx, ebx
setne al
jmp dword [eax*4 + 0x448f64]
mov esi, ebx
mov ecx, 2
xor ebx, ebx
cmp ecx, 4
setb bl
mov eax, 0x20119
xor edx, edx
jmp dword [ebx*4 + 0x448f84]
mov eax, dword [case.0x421323.17]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
xor eax, eax
jmp 0x421d6b
add eax, 0x26
mov ebx, dword [ebp - 0x28]
push eax
call fcn.00409a50
add esp, 4
mov dword [edi], 0xba56bc59
mov dword [edi + 4], 0xa635b828
mov dword [edi + 8], 0xa234a44f
mov dword [edi + 0xc], 0xae4ba048
mov dword [edi + 0x10], 0xaa3aac40
mov dword [edi + 0x14], 0x56bda83b
mov dword [edi + 0x18], 0x52ba54c2
mov dword [edi + 0x1c], 0x5ec55083
mov dword [edi + 0x20], 0x5ab15cb1
mov word [edi + 0x24], 0x5859
mov dword [edi + 0x26], 0
mov byte [edi + 0x2a], 0
mov dword [ebp - 0x10], 0
mov ecx, dword [ebp - 0x10]
cmp ecx, 0x2a
ja 0x421412
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edx, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
movzx ecx, byte [edi + ecx]
add edx, 0xbf6052ea
xor edx, ecx
mov dword [ebp - 0xb4], edx
mov edx, dword [ebp - 0xb4]
add dl, 0xa9
mov ecx, dword [ebp - 0x10]
mov byte [edi + ecx], dl
inc dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
cmp ecx, 0x2b
jb 0x4213e0
movzx ecx, word [esi]
mov dword [ebp - 0x1c], eax
test cx, cx
je 0x421441
lea edx, [esi + 2]
mov eax, dword [ebp - 0x1c]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x421430
mov word [eax], 0
movzx ecx, word [edi]
test cx, cx
je 0x421471
add edi, 2
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edi]
add edi, 2
test cx, cx
jne 0x421460
mov word [eax], 0
jmp dword [0x448fac]
push esi
call fcn.00409a60
add esp, 4
xor eax, eax
mov ecx, dword [ebp - 0x1c]
cmp word [ecx], 0x5b
sete al
mov esi, dword [ebp - 0x30]
mov edi, dword [ebp - 0x40]
jmp dword [eax*4 + 0x448fb4]
xor eax, eax
mov ecx, dword [ebp - 0x1c]
cmp word [ecx], 0x5b
sete al
mov esi, dword [ebp - 0x30]
mov edi, dword [ebp - 0x40]
jmp dword [eax*4 + 0x448fb4]
mov edx, dword [ebp - 0x3c]
mov dword [edx], 0x578e5597
mov dword [edx + 4], 0x5bfd59ea
mov dword [edx + 8], 0x5ff25dcb
mov dword [edx + 0xc], 0x43eb41f8
mov dword [edx + 0x10], 0x47f845eb
mov dword [edx + 0x14], 0x4bd949e3
mov dword [edx + 0x18], 0x4fea4de4
mov dword [edx + 0x1c], 0x339931e5
mov dword [edx + 0x20], 0x37a235dc
mov dword [edx + 0x24], 0x3b9e3992
mov word [edx + 0x28], 0x3d3a
mov dword [edx + 0x2a], 0
mov byte [edx + 0x2e], 0
mov dword [ebp - 0x10], 0
mov eax, dword [ebp - 0x10]
cmp eax, 0x2e
ja 0x42155c
nop
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
movzx ecx, byte [edx + ecx]
lea edx, [eax + 0x23]
add eax, ecx
and edx, ecx
add edx, edx
sub eax, edx
mov edx, dword [ebp - 0x3c]
add eax, 0x8cba2723
mov dword [ebp - 0xb4], eax
mov eax, dword [ebp - 0xb4]
add al, 0x8f
mov ecx, dword [ebp - 0x10]
mov byte [edx + ecx], al
inc dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
cmp eax, 0x2f
jb 0x421520
push 0
push edx
mov edi, dword [ebp - 0x1c]
push edi
call dword [sym.imp.KERNEL32.dll_CopyFileW]
mov ecx, edi
mov edi, dword [ebp - 0x40]
push 0x60
push 3
push 0x120089
push edi
push ecx
call fcn.00441b10
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x448fbc]
push 0
push esi
push dword [edi]
call fcn.00441e80
add esp, 0xc
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x448fc4]
mov esi, dword [esi]
lea eax, [esi + 1]
push eax
call fcn.00409a50
add esp, 4
push 0
push esi
mov esi, eax
push eax
push dword [edi]
call fcn.00441f70
add esp, 0x10
not eax
shr eax, 0x1f
mov edi, dword [ebp - 0x2c]
jmp dword [eax*4 + 0x448fcc]
mov eax, dword [ebp - 0x30]
mov eax, dword [eax]
mov dword [ebp - 0x20], eax
mov byte [esi + eax], 0
push 0x20
call fcn.00409a50
add esp, 4
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov dword [eax + 0x18], 0xffffffff
mov dword [eax + 0x14], 0
mov dword [eax + 0x10], 0
mov dword [eax], 0
mov dword [ebp - 0x58], eax
mov ecx, eax
push dword [ebp - 0x20]
push esi
call case.0x421323.250
movzx eax, al
jmp dword [eax*4 + 0x448fd4]
mov edx, dword [ebp - 0x38]
mov dword [edx], 0x11242e2d
mov dword [edx + 4], 0x22142415
mov dword [edx + 8], 0x21293d69
mov dword [edx + 0xc], 0x3c63281e
mov dword [edx + 0x10], 0xded1d41c
mov dword [edx + 0x14], 0xd4d7b49d
mov dword [edx + 0x18], 0xe9d4ecd9
mov dword [edx + 0x1c], 0x63e9
mov dword [ebp - 0x10], 0
mov eax, dword [ebp - 0x10]
cmp eax, 0x1f
ja 0x4216c0
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
movzx ecx, byte [edx + ecx]
lea edx, [eax + ecx]
add edx, 0x78ca806f
add eax, 0x78ca806f
and eax, ecx
add eax, eax
sub edx, eax
mov dword [ebp - 0xb4], edx
mov edx, dword [ebp - 0x38]
mov eax, dword [ebp - 0xb4]
add al, 0x11
mov ecx, dword [ebp - 0x10]
mov byte [edx + ecx], al
inc dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
cmp eax, 0x20
jb 0x421680
mov ecx, dword [ebp - 0x58]
push edx
call fcn.00424100
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x448fdc]
jmp dword [0x448fec]
mov edi, dword [ebp - 0x58]
mov ecx, edi
call fcn.00424270
push edi
call fcn.00409a60
add esp, 4
mov edi, dword [ebp - 0x40]
jmp dword [0x449004]
mov edi, dword [ebp - 0x40]
jmp dword [0x449004]
push esi
call fcn.00409a60
add esp, 4
mov eax, dword [edi]
mov dword [ebp - 0xb4], 0x7a79787f
mov dword [ebp - 0xb0], 0
mov dword [ebp - 0x14], 0
mov ecx, dword [ebp - 0x14]
cmp ecx, 7
ja 0x421764
mov ecx, dword [ebp - 0x14]
mov edx, dword [ebp - 0x14]
movzx edx, byte [ebp + edx - 0xb4]
add ecx, 0x6ea68513
xor ecx, edx
mov dword [ebp - 0x10], ecx
mov ecx, dword [ebp - 0x10]
add cl, 0x93
mov edx, dword [ebp - 0x14]
mov byte [ebp + edx - 0xb4], cl
inc dword [ebp - 0x14]
mov ecx, dword [ebp - 0x14]
cmp ecx, 8
jb 0x421730
mov ecx, dword [0x44d0a8]
test ecx, ecx
je case.0x421586.0
mov edx, dword [ebp - 0xb4]
xor esi, esi
mov edi, dword [0x44d0ac]
nop
nop
nop
nop
cmp dword [edi + esi*8], 0x625b6034
je 0x421790
inc esi
cmp ecx, esi
jne 0x421780
jmp case.0x421586.0
mov ecx, dword [edi + esi*8 + 4]
cmp ecx, edx
jne 0x4217bf
jmp dword [0x44900c]
push dword [ebp - 0x1c]
call fcn.00409a60
add esp, 4
mov edi, dword [ebp - 0x2c]
mov eax, dword [edi]
xor ecx, ecx
cmp eax, dword [edi + 4]
sete cl
xor eax, eax
jmp dword [ecx*4 + 0x449014]
push eax
push 1
push dword [0x44d0b0]
push ecx
call fcn.0043f8b0
add esp, 0x10
jmp dword [0x44900c]
mov edi, dword [ebp - 0x2c]
mov eax, dword [edi]
xor ecx, ecx
cmp eax, dword [edi + 4]
sete cl
xor eax, eax
jmp dword [ecx*4 + 0x449014]
jmp dword [0x44901c]
mov eax, dword [0x44d0a4]
mov dword [ebx], 0x9d429f63
mov dword [ebx + 4], 0x9137932d
mov dword [ebx + 8], 0x952a9737
mov dword [ebx + 0xc], 0x69da6b53
mov dword [ebx + 0x10], 0x6daa6fd8
mov dword [ebx + 0x14], 0x61d663cb
mov dword [ebx + 0x18], 0x659d67c7
mov dword [ebx + 0x1c], 0x79af7bc8
mov dword [ebx + 0x20], 0x7dc57fcc
mov dword [ebx + 0x24], 0x71c173db
mov dword [ebx + 0x28], 0x75ca77dc
mov dword [ebx + 0x2c], 0x49ef4bc5
mov dword [ebx + 0x30], 0x4df24fef
mov dword [ebx + 0x34], 0x41c843be
mov dword [ebx + 0x38], 0x45fc47e4
mov dword [ebx + 0x3c], 0x5b44
mov dword [ebp - 0x10], 0
mov ecx, dword [ebp - 0x10]
cmp ecx, 0x3f
ja 0x4218b2
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp - 0x10]
movzx edx, byte [ebx + edx]
add ecx, 0x5e6ebaf3
xor ecx, edx
mov dword [ebp - 0xb4], ecx
mov ecx, dword [ebp - 0xb4]
add cl, 0x95
mov edx, dword [ebp - 0x10]
mov byte [ebx + edx], cl
inc dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
cmp ecx, 0x40
jb 0x421880
mov esi, dword [ebp - 0x48]
push esi
push 0
push 0
push 0x1e
push ebx
push 0
call eax
mov esi, dword [esi]
test esi, esi
jns 0x4218ce
mov eax, 0xffffffff
jmp 0x4218d1
lea eax, [esi + esi]
push eax
call fcn.00409a50
add esp, 4
mov edi, eax
mov eax, dword [0x44d0a4]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x18]
mov dword [eax], 0x7eb17c9e
mov dword [eax + 4], 0x62c260d0
mov dword [eax + 8], 0x66c964c2
mov dword [eax + 0xc], 0x6af968a6
mov dword [eax + 0x10], 0x6ea96cfb
mov dword [eax + 0x14], 0x52c550ce
mov dword [eax + 0x18], 0x56b054f2
mov dword [eax + 0x1c], 0x5aea58eb
mov dword [eax + 0x20], 0x5ef85ccf
mov dword [eax + 0x24], 0x42ec40fe
mov dword [eax + 0x28], 0x46e944ff
mov dword [eax + 0x2c], 0x4aea48e8
mov dword [eax + 0x30], 0x4ee14cea
mov dword [eax + 0x34], 0x32a730a1
mov dword [eax + 0x38], 0x36933497
mov word [eax + 0x3c], 0x3837
mov word [eax + 0x42], 0
mov dword [eax + 0x3e], 0
mov dword [ebp - 0x10], 0
mov ecx, dword [ebp - 0x10]
cmp ecx, 0x43
ja 0x4219b2
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp - 0x10]
movzx edx, byte [eax + edx]
add ecx, 0x83873b0b
xor ecx, edx
mov dword [ebp - 0xb4], ecx
mov ecx, dword [ebp - 0xb4]
add cl, 0x90
mov edx, dword [ebp - 0x10]
mov byte [eax + edx], cl
inc dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
cmp ecx, 0x44
jb 0x421980
push dword [ebp - 0x48]
push esi
push edi
push 0x1e
push eax
push 0
call dword [ebp - 0x20]
push 0x60
push 3
push 0x120089
push dword [ebp - 0x44]
push edi
call fcn.00441b10
add esp, 0x14
mov edi, dword [ebp - 0x2c]
jmp case.0x4216d0.16
push dword [ebp - 0x48]
push esi
mov esi, dword [ebp - 0x20]
push esi
push 0x1e
push ebx
push 0
call eax
push 0x60
push 3
push 0x120089
push dword [ebp - 0x44]
push esi
call fcn.00441b10
add esp, 0x14
mov ebx, dword [ebp - 0x28]
jmp dword [0x449024]
mov eax, dword [edi + 4]
sub eax, dword [edi]
sar eax, 3
imul eax, eax, 0x421
push eax
call fcn.00409a50
add esp, 4
mov dword [ebp - 0x24], eax
mov eax, dword [0x44d0a4]
mov dword [ebx], 0x9d429f63
mov dword [ebx + 4], 0x9137932d
mov dword [ebx + 8], 0x952a9737
mov dword [ebx + 0xc], 0x69da6b53
mov dword [ebx + 0x10], 0x6daa6fd8
mov dword [ebx + 0x14], 0x61d663cb
mov dword [ebx + 0x18], 0x659d67c7
mov dword [ebx + 0x1c], 0x79af7bc8
mov dword [ebx + 0x20], 0x7dc57fcc
mov dword [ebx + 0x24], 0x71c173db
mov dword [ebx + 0x28], 0x75ca77dc
mov dword [ebx + 0x2c], 0x49ef4bc5
mov dword [ebx + 0x30], 0x4df24fef
mov dword [ebx + 0x34], 0x41c843be
mov dword [ebx + 0x38], 0x45fc47e4
mov dword [ebx + 0x3c], 0x5b44
mov dword [ebp - 0x10], 0
mov ecx, dword [ebp - 0x10]
cmp ecx, 0x3f
ja 0x421ae2
nop
nop
nop
nop
nop
nop
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp - 0x10]
movzx edx, byte [ebx + edx]
add ecx, 0x5e6ebaf3
xor ecx, edx
mov dword [ebp - 0xb4], ecx
mov ecx, dword [ebp - 0xb4]
add cl, 0x95
mov edx, dword [ebp - 0x10]
mov byte [ebx + edx], cl
inc dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
cmp ecx, 0x40
jb 0x421ab0
mov esi, dword [ebp - 0x48]
push esi
push 0
push 0
push 0x1e
push ebx
push 0
call eax
mov esi, dword [esi]
test esi, esi
jns 0x421b00
mov eax, 0xffffffff
jmp 0x421b03
lea eax, [esi + esi]
mov ecx, dword [ebp - 0x18]
lea ebx, [ecx + 0x3e]
push eax
call fcn.00409a50
add esp, 4
mov dword [ebp - 0x20], eax
mov eax, dword [0x44d0a4]
mov ecx, dword [ebp - 0x18]
mov dword [ecx], 0x7eb17c9e
mov ecx, dword [ebp - 0x18]
mov dword [ecx + 4], 0x62c260d0
mov ecx, dword [ebp - 0x18]
mov dword [ecx + 8], 0x66c964c2
mov ecx, dword [ebp - 0x18]
mov dword [ecx + 0xc], 0x6af968a6
mov ecx, dword [ebp - 0x18]
mov dword [ecx + 0x10], 0x6ea96cfb
mov ecx, dword [ebp - 0x18]
mov dword [ecx + 0x14], 0x52c550ce
mov ecx, dword [ebp - 0x18]
mov dword [ecx + 0x18], 0x56b054f2
mov ecx, dword [ebp - 0x18]
mov dword [ecx + 0x1c], 0x5aea58eb
mov ecx, dword [ebp - 0x18]
mov dword [ecx + 0x20], 0x5ef85ccf
mov ecx, dword [ebp - 0x18]
mov dword [ecx + 0x24], 0x42ec40fe
mov ecx, dword [ebp - 0x18]
mov dword [ecx + 0x28], 0x46e944ff
mov ecx, dword [ebp - 0x18]
mov dword [ecx + 0x2c], 0x4aea48e8
mov ecx, dword [ebp - 0x18]
mov dword [ecx + 0x30], 0x4ee14cea
mov ecx, dword [ebp - 0x18]
mov dword [ecx + 0x34], 0x32a730a1
mov ecx, dword [ebp - 0x18]
mov dword [ecx + 0x38], 0x36933497
mov ecx, dword [ebp - 0x18]
mov word [ecx + 0x3c], 0x3837
mov word [ebx + 4], 0
mov dword [ebx], 0
mov ebx, dword [ebp - 0x18]
mov dword [ebp - 0x10], 0
mov ecx, dword [ebp - 0x10]
cmp ecx, 0x43
ja 0x4219e0
nop
nop
nop
nop
nop
nop
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp - 0x10]
movzx edx, byte [ebx + edx]
add ecx, 0x83873b0b
xor ecx, edx
mov dword [ebp - 0xb4], ecx
mov ecx, dword [ebp - 0xb4]
add cl, 0x90
mov edx, dword [ebp - 0x10]
mov byte [ebx + edx], cl
inc dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
cmp ecx, 0x44
jb 0x421be0
jmp 0x4219e0
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x44902c]
xor ebx, ebx
mov esi, dword [ebp - 0x24]
mov dword [ebp - 0x28], esi
jmp dword [0x4490d4]
push dword [ebp - 0x20]
call fcn.00409a60
add esp, 4
mov eax, ebx
and al, 1
movzx ecx, al
mov eax, ebx
jmp dword [ecx*4 + 0x4490dc]
mov ebx, dword [ebp - 0x28]
mov byte [ebx], 0
mov edx, dword [ebp - 0xc4]
mov dword [edx], 0x41464727
mov dword [edx + 4], 0x7d4d4e43
mov dword [edx + 8], 0x407c7e47
mov dword [edx + 0xc], 0x7246663d
mov dword [edx + 0x10], 0x69377477
mov dword [edx + 0x14], 0x73797675
mov dword [edx + 0x18], 0x55522d4d
mov dword [edx + 0x1c], 0xdb50
mov byte [edx + 0x20], 0
sub ebx, esi
mov dword [ebp - 0x10], 0
mov eax, dword [ebp - 0x10]
cmp eax, 0x20
ja 0x421ce0
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
movzx ecx, byte [edx + ecx]
add eax, 0x7d4f7417
xor eax, ecx
mov dword [ebp - 0xb4], eax
mov eax, dword [ebp - 0xb4]
add al, 0x11
mov ecx, dword [ebp - 0x10]
mov byte [edx + ecx], al
inc dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
cmp eax, 0x21
jb 0x421cb0
mov ecx, dword [ebp + 8]
push ebx
push esi
push edx
call fcn.0040a440
jmp dword [0x4490e4]
push esi
mov esi, eax
call fcn.00409a60
mov eax, esi
add esp, 4
and al, 1
mov ecx, dword [case.0x4216d0.15]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp ecx
mov esi, dword [edi]
test esi, esi
je 0x421d6b
mov edi, dword [edi + 4]
cmp esi, edi
je 0x421d6b
mov dword [ebp - 0x1c], eax
mov ebx, esi
jmp 0x421d37
add ebx, 8
cmp ebx, edi
je 0x421d48
mov eax, dword [ebx]
test eax, eax
je 0x421d30
push eax
call fcn.00409a60
add esp, 4
jmp 0x421d30
push esi
call fcn.00409a60
add esp, 4
mov eax, dword [ebp - 0x2c]
mov dword [eax], 0
mov dword [eax + 4], 0
mov dword [eax + 8], 0
mov eax, dword [ebp - 0x1c]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
push 0
mov edi, dword [ebp - 0xc0]
push edi
mov ebx, dword [ebp - 0x44]
push dword [ebx]
call fcn.00441e80
add esp, 0xc
not eax
shr eax, 0x1f
mov dword [ebp - 0x1c], 0
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x28], ecx
jmp dword [eax*4 + 0x449034]
mov esi, dword [edi]
lea eax, [esi + 1]
push eax
call fcn.00409a50
add esp, 4
push 0
push esi
mov dword [ebp - 0x30], eax
push eax
push dword [ebx]
call fcn.00441f70
add esp, 0x10
not eax
shr eax, 0x1f
xor edx, edx
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x28], ecx
jmp dword [eax*4 + 0x44903c]
mov esi, dword [edi]
mov edi, dword [ebp - 0x30]
mov byte [edi + esi], 0
push 0x20
call fcn.00409a50
add esp, 4
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov dword [eax + 0x18], 0xffffffff
mov dword [eax + 0x14], 0
mov dword [eax + 0x10], 0
mov dword [eax], 0
mov dword [ebp - 0x38], eax
mov ecx, eax
push esi
push edi
call case.0x421323.250
movzx eax, al
xor edx, edx
mov esi, dword [ebp - 0x24]
mov edi, esi
jmp dword [eax*4 + 0x449044]
mov edx, dword [ebp - 0xb8]
mov dword [edx], 0x9f8e9883
mov dword [edx + 4], 0x889e8ea3
mov dword [edx + 8], 0x9f83f7df
mov dword [edx + 0xc], 0xf2d58294
mov dword [edx + 0x10], 0x849b9e92
mov dword [edx + 0x14], 0x818df8cb
mov dword [edx + 0x18], 0x87959680
mov dword [edx + 0x1c], 0x8f9196f7
mov word [edx + 0x20], 0x991
mov dword [edx + 0x22], 0
mov word [edx + 0x26], 0
mov dword [ebp - 0x10], 0
mov eax, dword [ebp - 0x10]
cmp eax, 0x27
ja 0x421ec0
nop
nop
nop
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
movzx ecx, byte [edx + ecx]
add eax, 0x4b0f51bf
xor eax, ecx
mov dword [ebp - 0xb4], eax
mov eax, dword [ebp - 0xb4]
add al, 0x17
mov ecx, dword [ebp - 0x10]
mov byte [edx + ecx], al
inc dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
cmp eax, 0x28
jb 0x421e90
mov ecx, dword [ebp - 0x38]
push edx
call fcn.00424100
xor ecx, ecx
test eax, eax
setne cl
xor edx, edx
mov edi, esi
jmp dword [ecx*4 + 0x44904c]
mov eax, dword [case.0x4216d0.26]
jmp eax
mov dword [ebp - 0x28], edi
jmp dword [0x4490c4]
mov dword [ebp - 0x1c], edx
mov esi, dword [ebp - 0x38]
mov ecx, esi
call fcn.00424270
push esi
call fcn.00409a60
add esp, 4
jmp dword [0x4490cc]
mov dword [ebp - 0x1c], edx
jmp dword [0x4490cc]
push dword [ebp - 0x30]
call fcn.00409a60
add esp, 4
mov eax, dword [ebx]
mov dword [ebp - 0xb4], 0x7a79787f
mov dword [ebp - 0xb0], 0
mov dword [ebp - 0x14], 0
mov ecx, dword [ebp - 0x14]
cmp ecx, 7
ja 0x421f74
mov ecx, dword [ebp - 0x14]
mov edx, dword [ebp - 0x14]
movzx edx, byte [ebp + edx - 0xb4]
add ecx, 0x6ea68513
xor ecx, edx
mov dword [ebp - 0x10], ecx
mov ecx, dword [ebp - 0x10]
add cl, 0x93
mov edx, dword [ebp - 0x14]
mov byte [ebp + edx - 0xb4], cl
inc dword [ebp - 0x14]
mov ecx, dword [ebp - 0x14]
cmp ecx, 8
jb 0x421f40
mov ecx, dword [0x44d0a8]
test ecx, ecx
je 0x421fa8
mov edx, dword [ebp - 0xb4]
xor esi, esi
mov edi, dword [0x44d0ac]
nop
nop
nop
nop
cmp dword [edi + esi*8], 0x625b6034
je 0x421fa0
inc esi
cmp ecx, esi
jne 0x421f90
jmp 0x421fa8
mov ecx, dword [edi + esi*8 + 4]
cmp ecx, edx
jne 0x421fcd
mov edi, dword [ebp - 0x2c]
mov esi, dword [ebp - 0x24]
mov ebx, dword [ebp - 0x1c]
jmp dword [0x4490d4]
mov eax, ebx
and al, 1
movzx ecx, al
mov eax, ebx
jmp dword [ecx*4 + 0x4490dc]
jmp dword [0x4490e4]
push eax
push 1
push dword [0x44d0b0]
push ecx
call fcn.0043f8b0
add esp, 0x10
mov edi, dword [ebp - 0x2c]
mov esi, dword [ebp - 0x24]
mov ebx, dword [ebp - 0x1c]
jmp dword [0x4490d4]
add eax, 8
mov edx, dword [eax]
xor eax, eax
test edx, edx
setne al
mov dword [ebp - 0x5c], esi
jmp dword [eax*4 + 0x448fe4]
not eax
mov ebx, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x3c]
mov esi, dword [ebp - 0x24]
mov dword [esi + ecx + 4], eax
mov eax, dword [ebp - 0x30]
add eax, 8
mov ecx, dword [ebp - 0x2c]
mov dword [ecx + 4], eax
add edx, 4
mov edx, dword [edx]
xor eax, eax
test edx, edx
setne al
mov esi, edi
mov edi, ecx
jmp dword [eax*4 + 0x448fe4]
mov dword [ebp - 0x38], edx
mov eax, dword [edx]
mov dword [ebp - 0x20], eax
mov esi, dword [edi]
mov edx, dword [edi + 4]
mov ebx, edx
sub ebx, esi
cmp edx, dword [edi + 8]
jne 0x4220e4
mov dword [ebp - 0x30], edx
mov ecx, ebx
sar ecx, 3
lea eax, [ecx + 1]
mov edx, ecx
shr edx, 1
mov edi, edx
and edi, ecx
xor edx, ecx
lea ecx, [edx + edi*2]
cmp ecx, eax
ja 0x42207a
mov ecx, eax
mov dword [ebp - 0x34], ecx
lea eax, [ecx*8]
push eax
call fcn.00409a50
add esp, 4
mov dword [ebp - 0x24], eax
test esi, esi
je 0x4220cb
mov edx, dword [ebp - 0x30]
cmp esi, edx
mov edi, dword [ebp - 0x24]
je 0x4220c2
xor eax, eax
mov ecx, dword [esi + eax]
mov dword [edi + eax], ecx
mov ecx, dword [esi + eax + 4]
mov dword [edi + eax + 4], ecx
mov dword [esi + eax], 0
lea ecx, [esi + eax]
add ecx, 8
add eax, 8
cmp ecx, edx
jne 0x4220a0
push esi
call fcn.00409a60
add esp, 4
mov ecx, dword [ebp - 0x2c]
mov edi, dword [ebp - 0x24]
mov dword [ecx], edi
lea edx, [edi + ebx]
mov dword [ecx + 4], edx
mov eax, dword [ebp - 0x34]
lea eax, [edi + eax*8]
mov esi, edi
mov dword [ecx + 8], eax
mov dword [ebp - 0x30], edx
mov dword [esi + ebx], 0
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x24], esi
mov dword [esi + ebx + 4], 0
mov ebx, 0xffffffff
xor eax, eax
mov ecx, dword [ebp - 0x20]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov esi, eax
cmp byte [ecx + ebx + 1], 0
lea ebx, [ebx + 1]
lea eax, [eax + 1]
jne 0x422110
lea eax, [ebx + 1]
mov dword [ebp - 0x34], eax
push eax
call fcn.00409a50
add esp, 4
mov edi, eax
mov eax, dword [ebp - 0x3c]
mov ecx, dword [ebp - 0x24]
mov dword [ecx + eax], edi
mov ecx, dword [ebp - 0x34]
shr ecx, 2
mov edx, dword [ebp - 0x20]
mov eax, edi
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
mov ecx, dword [ebp - 0x34]
mov edx, ecx
and edx, 0xfffffffc
add eax, edx
mov edi, eax
add edx, dword [ebp - 0x20]
shr ecx, 1
and ecx, 1
mov eax, edx
mov dword [ebp - 0x50], edi
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
test bl, 1
jne 0x422181
mov ecx, dword [ebp - 0x34]
and ecx, 2
movzx eax, byte [edx + ecx]
mov edx, dword [ebp - 0x50]
mov byte [edx + ecx], al
test ebx, ebx
je 0x4221f8
cmp ebx, 1
jne 0x42218d
mov eax, 0xffffffff
jmp 0x4221ce
and esi, 0xfffffffe
mov eax, 0xffffffff
mov edx, dword [ebp - 0x20]
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, eax
shr ecx, 8
xor al, byte [edx]
movzx eax, al
xor ecx, dword [eax*4 + 0x4445c0]
mov eax, ecx
shr eax, 8
xor cl, byte [edx + 1]
add edx, 2
movzx ecx, cl
xor eax, dword [ecx*4 + 0x4445c0]
add esi, 0xfffffffe
jne 0x4221a0
mov dword [ebp - 0x20], edx
mov edx, dword [ebp - 0x38]
test bl, 1
mov edi, dword [ebp - 0x5c]
je 0x422010
mov ecx, eax
shr ecx, 8
mov ebx, dword [ebp - 0x20]
xor al, byte [ebx]
movzx eax, al
xor ecx, dword [eax*4 + 0x4445c0]
mov eax, ecx
jmp 0x422010
xor eax, eax
mov ebx, dword [ebp - 0x28]
mov edi, dword [ebp - 0x5c]
mov edx, dword [ebp - 0x38]
jmp 0x422015
add eax, 8
mov ecx, dword [eax]
xor eax, eax
test ecx, ecx
setne al
xor edx, edx
mov edi, dword [ebp - 0x24]
jmp dword [eax*4 + 0x449054]
mov ecx, dword [ebp - 0x34]
add ecx, 4
mov ecx, dword [ecx]
xor eax, eax
test ecx, ecx
setne al
jmp dword [eax*4 + 0x449054]
mov eax, dword [ecx]
cmp dword [ecx + 0x18], 3
mov dword [ebp - 0x34], ecx
mov dword [ebp - 0x18], eax
jne case.default.0x422256
mov esi, dword [ecx + 0x10]
test eax, eax
setne al
test esi, esi
setne cl
and cl, al
movzx eax, cl
jmp dword [eax*4 + 0x44905c]
test eax, eax
setne al
xor ecx, ecx
test ecx, ecx
setne cl
and cl, al
movzx eax, cl
xor esi, esi
jmp dword [eax*4 + 0x44905c]
mov dword [ebp - 0x1c], edx
mov dword [ebp - 0x28], edi
mov eax, esi
nop
mov ecx, eax
inc eax
cmp byte [ecx], 0
jne case.default.0x4222a9
sub ecx, esi
inc ecx
shr ecx, 1
mov dword [ebp - 0x40], ecx
lea eax, [ecx + 1]
push eax
call fcn.00409a50
add esp, 4
movsx ecx, byte [esi]
xor edx, edx
test ecx, ecx
setne dl
mov dword [ebp - 0x3c], eax
jmp dword [edx*4 + 0x449064]
inc esi
mov byte [eax], dl
inc eax
movsx ecx, byte [esi]
xor edx, edx
test ecx, ecx
setne dl
jmp dword [edx*4 + 0x449064]
lea edx, [ecx - 0x30]
cmp edx, 0xa
jb 0x4222d2
mov edx, 0xffffffff
or ecx, 0x20
lea edi, [ecx - 0x61]
cmp edi, 6
jae case.default.0x4222ed
add ecx, 0xffffffa9
mov edx, ecx
movsx ecx, byte [esi + 1]
xor ebx, ebx
test ecx, ecx
setne bl
jmp dword [ebx*4 + 0x44906c]
lea edi, [ecx - 0x30]
cmp edi, 0xa
jb 0x422301
mov edi, 0xffffffff
or ecx, 0x20
lea ebx, [ecx - 0x61]
cmp ebx, 6
jae case.default.0x422326
add ecx, 0xffffffa9
mov edi, ecx
shl edx, 4
or edx, edi
add esi, 2
mov byte [eax], dl
inc eax
movsx ecx, byte [esi]
xor edx, edx
test ecx, ecx
setne dl
jmp dword [edx*4 + 0x449064]
mov byte [eax], 0
push 0
push 0x10
push 0
push dword [ebp - 0x18]
call fcn.00424310
add esp, 0x10
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x48], edx
mov eax, dword [ebp - 0x2c]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
xor esi, esi
xor eax, eax
cmp ecx, edx
setne al
jmp dword [eax*4 + 0x449074]
mov esi, dword [ecx]
xor eax, eax
jmp dword [eax*4 + 0x449084]
add ecx, 8
xor eax, eax
cmp ecx, edx
setne al
jmp dword [eax*4 + 0x449074]
mov edi, dword [ecx + 4]
mov eax, edi
shr eax, 0x1c
shl edi, 4
or edi, 1
xor eax, dword [ebp - 0x48]
xor edi, dword [ebp - 0x18]
xor ebx, ebx
or edi, eax
sete bl
jmp dword [ebx*4 + 0x44907c]
mov eax, 1
jmp dword [eax*4 + 0x449084]
xor eax, eax
test esi, esi
setne al
mov ebx, dword [ebp - 0x44]
mov edi, dword [ebp - 0x28]
jmp dword [eax*4 + 0x44908c]
mov eax, dword [ebp - 0x60]
mov ecx, dword [ebp - 0x40]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x3c]
mov dword [eax + 4], ecx
mov eax, 0xffffffff
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp byte [esi + eax + 1], 0
lea eax, [eax + 1]
jne case.default.0x42242e
mov ebx, dword [ebp - 0xbc]
mov dword [ebx], eax
mov dword [ebx + 4], esi
mov edi, dword [ebp - 0x4c]
mov dword [edi], 0
mov dword [edi + 4], 0
push 0x6c625980
push dword [0x44d0b4]
call fcn.00440fc0
add esp, 8
push edi
push 1
push 0
push 0
push ebx
push 0
push dword [ebp - 0x60]
call eax
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x449094]
mov eax, dword [case.0x421ed4.16]
mov edi, dword [ebp - 0x28]
mov ebx, dword [ebp - 0x44]
jmp case.0x421ed4.20
movzx eax, byte [esi]
test al, al
mov edi, dword [ebp - 0x28]
mov ebx, dword [ebp - 0x44]
je 0x42246b
inc esi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [edi], al
inc edi
movzx eax, byte [esi]
inc esi
test al, al
jne 0x422460
mov word [edi], 0x203a
add edi, 2
mov eax, dword [ebp - 0x4c]
mov edx, dword [eax]
test edx, edx
je 0x4224ae
mov eax, dword [eax + 4]
mov ecx, edx
and ecx, 3
je 0x4224b2
xor esi, esi
nop
nop
nop
nop
nop
nop
nop
nop
movzx ebx, byte [eax]
cmp bl, 1
sbb eax, 0xffffffff
mov byte [edi + esi], bl
inc esi
cmp ecx, esi
jne 0x422490
add edi, esi
mov ecx, edx
sub ecx, esi
mov esi, edi
mov ebx, dword [ebp - 0x44]
jmp 0x4224b4
mov esi, edi
jmp 0x4224f9
mov ecx, edx
cmp edx, 4
jb 0x4224f9
nop
nop
nop
nop
nop
nop
nop
movzx edx, byte [eax]
cmp dl, 1
sbb eax, 0xffffffff
mov byte [edi], dl
movzx edx, byte [eax]
cmp dl, 1
sbb eax, 0xffffffff
mov byte [edi + 1], dl
movzx edx, byte [eax]
cmp dl, 1
sbb eax, 0xffffffff
mov byte [edi + 2], dl
movzx edx, byte [eax]
cmp dl, 1
sbb eax, 0xffffffff
lea esi, [edi + 4]
mov byte [edi + 3], dl
mov edi, esi
add ecx, 0xfffffffc
jne 0x4224c0
mov byte [esi], 0xa
inc esi
push 0xe050b307
push dword [0x44d09c]
call fcn.00440fc0
add esp, 8
mov ecx, dword [ebp - 0x4c]
push dword [ecx + 4]
call eax
mov al, 1
mov dword [ebp - 0x1c], eax
mov eax, dword [case.0x421ed4.16]
mov edi, esi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
mov edx, dword [ebp - 0x1c]
jmp dword [0x4490ac]
push dword [ebp - 0x3c]
call fcn.00409a60
mov edx, dword [ebp - 0x1c]
add esp, 4
mov ecx, dword [ebp - 0x34]
add ecx, 4
mov ecx, dword [ecx]
xor eax, eax
test ecx, ecx
setne al
jmp dword [eax*4 + 0x449054]
int3
mov ecx, dword [esp + 0xa0]
add ecx, 4
xor eax, eax
cmp ecx, 0xc
setne al
jmp dword [eax*4 + 0x44910c]
mov dword [esp + 0xa0], ecx
mov ebp, dword [esp + ecx + 0x80]
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
cmp word [ebp + eax], 0
lea eax, [eax + 2]
jne 0x422960
lea ecx, [eax + ebp]
add ecx, 0xfffffffe
add eax, ebp
mov edx, 1
sub edx, eax
and edx, ebp
mov eax, ebp
not eax
and eax, ecx
sub eax, edx
mov dword [esp + 0x9c], eax
mov esi, eax
sar esi, 1
mov eax, dword [esp + 0x7c]
lea ecx, [esi + eax]
lea edx, [esi + eax]
add edx, 0xd
lea eax, [ecx*2 + 0x1a]
test edx, edx
jns 0x4229ac
mov eax, 0xffffffff
push eax
call fcn.00409a50
add esp, 4
mov ebx, eax
movzx ecx, word [edi]
test cx, cx
je 0x4229e1
mov edx, dword [esp + 0x90]
mov eax, ebx
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x4229d0
mov word [eax], 0x5c
mov dword [esp + 0x14], 0x827f8c61
mov dword [esp + 0x18], 0x86628010
mov dword [esp + 0x1c], 0xba278462
mov dword [esp + 0x20], 0xbe4ab899
mov dword [esp + 0x24], 0xb254bc29
mov dword [esp + 0x28], 0xb62cb025
mov word [esp + 0x2c], 0xb4b5
lea ecx, [esp + 0x14]
mov byte [ecx + 0x1c], 0
mov word [ecx + 0x1a], 0
add eax, 2
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 0x1c
ja 0x422a70
nop
nop
nop
mov ecx, dword [esp]
mov edx, dword [esp]
movzx edx, byte [esp + edx + 0x14]
add ecx, 0xdd7ca556
xor ecx, edx
mov dword [esp + 8], ecx
mov ecx, dword [esp + 8]
add cl, 0x25
mov edx, dword [esp]
mov byte [esp + edx + 0x14], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 0x1d
jb 0x422a40
movzx ecx, word [ebp]
test cx, cx
je 0x422a91
lea edx, [ebp + 2]
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x422a80
mov word [eax], 0
movzx ecx, word [esp + 0x14]
test cx, cx
je 0x422ac1
lea edx, [esp + 0x16]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x422ab0
mov word [eax], 0
lea eax, [esp + 0x78]
push 0x60
push 3
push 0x120089
push eax
push ebx
call fcn.00441b10
add esp, 0x14
not eax
shr eax, 0x1f
mov dword [esp + 0x98], esi
mov dword [esp + 0xb0], ebx
jmp dword [eax*4 + 0x44911c]
xor ebx, ebx
jmp dword [0x44919c]
push dword [esp + 0xb0]
call fcn.00409a60
add esp, 4
movzx eax, bl
jmp dword [eax*4 + 0x4491a4]
lea eax, [esp + 0xa4]
push 0
push eax
push dword [esp + 0x80]
call fcn.00441e80
add esp, 0xc
mov ecx, dword [case.0x421323.119]
nop
jmp ecx
not eax
shr eax, 0x1f
xor ebx, ebx
jmp dword [eax*4 + 0x449144]
mov esi, dword [esp + 0xa4]
lea eax, [esi + 1]
push eax
call fcn.00409a50
add esp, 4
mov edi, eax
push 0
push esi
push eax
push dword [esp + 0x84]
call fcn.00441f70
add esp, 0x10
not eax
shr eax, 0x1f
xor ebx, ebx
jmp dword [eax*4 + 0x44914c]
mov eax, dword [esp + 0xa4]
mov byte [edi + eax], 0
push edi
call fcn.00402a00
add esp, 4
xor ecx, ecx
test eax, eax
setne cl
xor ebx, ebx
jmp dword [ecx*4 + 0x449154]
jmp dword [0x449184]
push edi
call fcn.00409a60
add esp, 4
mov eax, dword [case.0x421323.120]
nop
nop
jmp eax
mov eax, dword [esp + 0x78]
mov dword [esp + 0x14], 0x7a79787f
mov dword [esp + 0x18], 0
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 7
ja 0x422c20
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp]
mov edx, dword [esp]
movzx edx, byte [esp + edx + 0x14]
add ecx, 0x6ea68513
xor ecx, edx
mov dword [esp + 8], ecx
mov ecx, dword [esp + 8]
add cl, 0x93
mov edx, dword [esp]
mov byte [esp + edx + 0x14], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 8
jb 0x422bf0
mov ecx, dword [0x44d0a8]
test ecx, ecx
je 0x422c60
mov edx, dword [esp + 0x14]
xor esi, esi
mov edi, dword [0x44d0ac]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [edi + esi*8], 0x625b6034
je 0x422c50
inc esi
cmp ecx, esi
jne 0x422c40
jmp 0x422c60
mov ecx, dword [edi + esi*8 + 4]
cmp ecx, edx
jne 0x422ec1
nop
nop
nop
nop
mov edi, dword [esp + 0x50]
jmp dword [0x44919c]
movzx eax, bl
jmp dword [eax*4 + 0x4491a4]
jmp dword [0x4491b8]
mov eax, dword [esp + 0x7c]
mov ebx, dword [esp + 0x98]
lea ecx, [ebx + eax]
lea edx, [ebx + eax]
add edx, 0x17
lea eax, [ecx*2 + 0x2e]
test edx, edx
jns 0x422caa
mov eax, 0xffffffff
push eax
call fcn.00409a50
add esp, 4
mov esi, eax
movzx ecx, word [edi]
test cx, cx
je 0x422ce1
mov edx, dword [esp + 0x90]
mov eax, esi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x422cd0
mov word [eax], 0x5c
mov dword [esp + 0x14], 0xd6abd4b9
mov dword [esp + 0x18], 0xcaaec858
mov dword [esp + 0x1c], 0xce53ccae
mov dword [esp + 0x20], 0xc2b6c0e1
mov dword [esp + 0x24], 0xc656c451
mov dword [esp + 0x28], 0xfa98f86b
mov dword [esp + 0x2c], 0xfe98fc64
mov dword [esp + 0x30], 0xf26ff09d
mov dword [esp + 0x34], 0xf661f492
mov dword [esp + 0x38], 0xea77e88e
mov dword [esp + 0x3c], 0xee8dec89
mov word [esp + 0x40], 0xe0e1
mov dword [esp + 0x42], 0
add eax, 2
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 0x31
ja 0x422d9a
nop
mov ecx, dword [esp]
mov edx, dword [esp]
movzx edx, byte [esp + edx + 0x14]
lea edi, [ecx + edx]
add ecx, 0x4c
and ecx, edx
add ecx, ecx
sub edi, ecx
add edi, 0xca3e304c
mov dword [esp + 8], edi
mov ecx, dword [esp + 8]
add cl, 0x67
mov edx, dword [esp]
mov byte [esp + edx + 0x14], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 0x32
jb 0x422d60
movzx ecx, word [ebp]
test cx, cx
je 0x422dc1
lea edx, [ebp + 2]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x422db0
mov word [eax], 0
movzx ecx, word [esp + 0x14]
test cx, cx
je 0x422df1
lea edx, [esp + 0x16]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x422de0
mov word [eax], 0
mov eax, dword [esp + 0x9c]
add eax, 0x12
cmp ebx, 0xfffffff7
jge 0x422e0a
mov eax, 0xffffffff
push eax
call fcn.00409a50
add esp, 4
mov ebx, eax
mov dword [esp + 0x14], 0xa90aa7d5
mov dword [esp + 0x18], 0xad1cab0f
mov dword [esp + 0x1c], 0xb102af0b
mov dword [esp + 0x20], 0xb510b314
mov word [esp + 0x24], 0xb7b4
lea eax, [esp + 0x14]
mov byte [eax + 0x14], 0
mov word [eax + 0x12], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x14
ja 0x422e8e
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
mov ecx, dword [esp]
movzx ecx, byte [esp + ecx + 0x14]
add eax, 0xf191b05
xor eax, ecx
mov dword [esp + 8], eax
mov eax, dword [esp + 8]
add al, 0x5f
mov ecx, dword [esp]
mov byte [esp + ecx + 0x14], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x15
jb 0x422e60
movzx ecx, word [ebp]
mov eax, ebx
test cx, cx
je 0x422eb2
add ebp, 2
mov eax, ebx
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [ebp]
add ebp, 2
test cx, cx
jne 0x422ea0
mov word [eax], 0
lea ebp, [esp + 0x16]
jmp dword [0x4491c0]
push eax
push 1
push dword [0x44d0b0]
push ecx
call fcn.0043f8b0
add esp, 0x10
mov edi, dword [esp + 0x50]
jmp dword [0x44919c]
mov dword [esp + 0xac], eax
push eax
call fcn.004034b0
add esp, 4
mov dword [esp + 0x14], 0xe7e8d5de
mov dword [esp + 0x18], 0xa8a7afd7
mov dword [esp + 0x1c], 0x9fa19fe7
mov dword [esp + 0x20], 0xa0afa7af
mov dword [esp + 0x24], 0xaf989690
mov word [esp + 0x28], 0xbf94
mov byte [esp + 0x2a], 0x27
lea ecx, [esp + 0x14]
mov byte [ecx + 0x19], 0
mov word [ecx + 0x17], 0
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 0x19
ja 0x422f70
nop
nop
mov ecx, dword [esp]
mov edx, dword [esp]
movzx edx, byte [esp + edx + 0x14]
add ecx, 0xb130b33b
xor ecx, edx
mov dword [esp + 8], ecx
mov ecx, dword [esp + 8]
add cl, 0x8a
mov edx, dword [esp]
mov byte [esp + edx + 0x14], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 0x1a
jb 0x422f40
lea ecx, [esp + 0x14]
push ecx
push eax
call fcn.00403870
add esp, 8
mov edx, eax
mov ecx, 0xffffffff
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, ecx
cmp byte [edx + ecx + 1], 0
lea ecx, [ecx + 1]
jne 0x422f90
mov eax, ecx
and eax, 3
mov esi, ecx
or esi, 3
imul esi, eax
xor eax, 3
mov dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x10]
and ecx, 0xfffffffc
imul ecx, eax
add esi, ecx
mov ecx, dword [esp + 0x10]
shr esi, 2
movzx eax, byte [edx + ecx - 1]
cmp eax, 0x3d
je 0x422fd2
cmp eax, 0x2e
jne 0x422fd3
dec esi
movzx eax, byte [edx + ecx - 2]
cmp eax, 0x3d
mov dword [esp + 0x94], edx
mov dword [esp + 0x8c], edi
je 0x422ff0
cmp eax, 0x2e
jne 0x422ff1
dec esi
mov dword [esp + 0xa8], esi
lea eax, [esi + 1]
push eax
call fcn.00409a50
add esp, 4
mov dword [esp + 0x54], eax
cmp dword [esp + 0x10], 0
je 0x42310a
xor edx, edx
mov esi, 2
jmp 0x423034
mov edi, ebx
lea eax, [esi + 4]
add esi, 2
mov edx, edi
cmp esi, ecx
mov esi, eax
jae 0x42310a
mov dword [esp + 0x74], edx
mov edi, dword [esp + 0x94]
movzx eax, byte [edi + esi - 2]
push eax
call fcn.004164c0
add esp, 4
mov ebx, eax
movzx eax, byte [edi + esi - 1]
push eax
call fcn.004164c0
mov edx, dword [esp + 0x78]
add esp, 4
shl bl, 2
mov ah, al
shr ah, 4
and ah, 3
or ah, bl
lea ebx, [edx + 1]
mov ecx, dword [esp + 0x54]
mov byte [ecx + edx], ah
mov ecx, dword [esp + 0x10]
cmp esi, ecx
jae 0x423020
mov byte [esp + 0x4b], al
movzx eax, byte [edi + esi]
push eax
call fcn.004164c0
mov ecx, dword [esp + 0x14]
add esp, 4
cmp al, 0x40
mov edi, ebx
je 0x423022
movzx ecx, byte [esp + 0x4b]
shl cl, 4
mov ebx, eax
shr al, 2
and al, 0xf
or al, cl
mov edx, dword [esp + 0x74]
lea edi, [edx + 2]
mov ecx, dword [esp + 0x54]
mov byte [ecx + edx + 1], al
mov ecx, dword [esp + 0x10]
lea eax, [esi + 1]
cmp eax, ecx
jae 0x423022
mov eax, dword [esp + 0x94]
movzx eax, byte [eax + esi + 1]
push eax
call fcn.004164c0
mov ecx, dword [esp + 0x14]
add esp, 4
cmp al, 0x40
je 0x423022
shl bl, 6
add al, bl
mov ecx, dword [esp + 0x54]
mov edx, dword [esp + 0x74]
mov byte [ecx + edx + 2], al
mov ecx, dword [esp + 0x10]
add edx, 3
mov edi, edx
jmp 0x423022
mov eax, dword [esp + 0xa8]
add eax, 0xfffffffb
mov dword [esp + 8], eax
mov eax, dword [esp + 0x54]
add eax, 5
mov dword [esp + 0xc], eax
mov dword [esp], 0
mov dword [esp + 4], 0
push 0x6c625980
push dword [0x44d0b4]
call fcn.00440fc0
add esp, 8
mov ecx, esp
lea edx, [esp + 8]
push ecx
push 0
push 0
push 0
push 0
push 0
push edx
call eax
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x44915c]
xor ebx, ebx
mov edi, dword [esp + 0x8c]
jmp dword [0x44917c]
mov eax, dword [esp + 0x9c]
add eax, 0x10
cmp dword [esp + 0x98], 0xfffffff8
mov edi, dword [esp + 0x8c]
jge 0x423196
mov eax, 0xffffffff
push eax
call fcn.00409a50
add esp, 4
mov esi, eax
mov dword [esp + 0x14], 0xf76af5a3
mov dword [esp + 0x18], 0xf3a4f160
mov dword [esp + 0x1c], 0xef66ed60
mov dword [esp + 0x20], 0xebeae964
mov dword [esp + 0x4c], 0
mov eax, dword [esp + 0x4c]
cmp eax, 0xf
ja 0x423219
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x4c]
movzx ecx, byte [esp + ecx + 0x14]
add eax, 0xe025a0e8
xor eax, ecx
mov dword [esp + 0xb4], eax
mov eax, dword [esp + 0xb4]
add al, 0xe4
mov ecx, dword [esp + 0x4c]
mov byte [esp + ecx + 0x14], al
inc dword [esp + 0x4c]
mov eax, dword [esp + 0x4c]
cmp eax, 0x10
jb 0x4231e0
movzx ecx, word [ebp]
mov eax, esi
test cx, cx
je 0x423241
lea edx, [ebp + 2]
mov eax, esi
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x423230
mov word [eax], 0
movzx ecx, word [esp + 0x14]
test cx, cx
je 0x423271
lea edx, [esp + 0x16]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x423260
mov word [eax], 0
mov ecx, dword [esp + 0xf8]
push dword [esp]
push dword [esp + 8]
push esi
call fcn.0040a280
mov ebx, eax
jmp dword [0x449164]
jmp dword [0x449170]
push esi
call fcn.00409a60
add esp, 4
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
push esi
call fcn.00409a60
add esp, 4
jmp dword [0x449174]
push 0xe050b307
push dword [0x44d09c]
call fcn.00440fc0
add esp, 8
push dword [esp + 4]
call eax
jmp dword [0x44917c]
push dword [esp + 0x54]
call fcn.00409a60
add esp, 4
push dword [esp + 0xac]
call fcn.00403a60
add esp, 4
jmp dword [0x449184]
movzx ecx, word [esp + 0x14]
mov edx, eax
test cx, cx
je 0x423321
mov edi, ebp
mov edx, eax
mov word [edx], cx
add edx, 2
movzx ecx, word [edi]
add edi, 2
test cx, cx
jne 0x423310
mov word [edx], 0
movzx ecx, word [esp + 0x14]
mov edx, eax
test cx, cx
je 0x423351
mov edi, ebp
mov edx, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [edx], cx
add edx, 2
movzx ecx, word [edi]
add edi, 2
test cx, cx
jne 0x423340
mov word [edx], 0
mov dword [esp], 0x565554a1
jmp dword [0x4491c4]
mov dword [esp + 8], 0
mov eax, dword [esp + 8]
cmp eax, 3
ja 0x4233b1
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 8]
mov ecx, dword [esp + 8]
movzx ecx, byte [esp + ecx]
add eax, 0x641d10b7
xor eax, ecx
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x14]
add al, 0x14
mov ecx, dword [esp + 8]
mov byte [esp + ecx], al
inc dword [esp + 8]
mov eax, dword [esp + 8]
cmp eax, 4
jb 0x423380
mov eax, esp
push 0
push 0
push 0
push 0xc00000
push eax
push esi
push ebx
push dword [esp + 0x114]
call fcn.0041a3f0
add esp, 0x20
mov ecx, dword [esp + 0x70]
and cl, 1
mov edi, dword [esp + 0x50]
jmp dword [0x4491dc]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp dword [0x4491e8]
or cl, al
mov dword [esp + 0x70], ecx
jmp dword [0x4491ec]
push ebx
call fcn.00409a60
add esp, 4
jmp dword [0x4491f4]
jmp dword [0x4491f4]
push esi
call fcn.00409a60
add esp, 4
mov ecx, dword [esp + 0xa0]
add ecx, 4
xor eax, eax
cmp ecx, 0xc
setne al
jmp dword [eax*4 + 0x44910c]
jmp dword [0x449114]
jmp dword [0x4491fc]
mov eax, dword [esp + 0x70]
and al, 1
add esp, 0xe4
pop esi
pop edi
pop ebx
pop ebp
ret
push edi
call fcn.00409a60
add esp, 4
push edi
call fcn.00409a60
add esp, 4
jmp dword [0x449208]
int3
xor eax, eax
jmp dword [0x449354]
push dword [esp + 0x70]
mov esi, eax
call fcn.00409a60
mov eax, esi
add esp, 4
add esp, 0x88
pop esi
pop edi
pop ebx
pop ebp
ret
lea eax, [esp + 0x74]
push 0
push eax
push dword [esp + 0x70]
call fcn.00441e80
add esp, 0xc
not eax
shr eax, 0x1f
mov dword [esp + 0x10], 0
jmp dword [eax*4 + 0x449214]
mov esi, dword [esp + 0x74]
lea eax, [esi + 1]
push eax
call fcn.00409a50
add esp, 4
push 0
push esi
mov dword [esp + 0x74], eax
push eax
push dword [esp + 0x74]
call fcn.00441f70
add esp, 0x10
not eax
shr eax, 0x1f
mov dword [esp + 0x10], 0
jmp dword [eax*4 + 0x44921c]
jmp dword [0x44933c]
push dword [esp + 0x6c]
call fcn.00409a60
add esp, 4
mov eax, dword [esp + 0x68]
mov dword [esp + 0x28], 0x7a79787f
mov dword [esp + 0x2c], 0
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 7
ja 0x423790
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp]
mov edx, dword [esp]
movzx edx, byte [esp + edx + 0x28]
add ecx, 0x6ea68513
xor ecx, edx
mov dword [esp + 4], ecx
mov ecx, dword [esp + 4]
add cl, 0x93
mov edx, dword [esp]
mov byte [esp + edx + 0x28], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 8
jb 0x423760
mov ecx, dword [0x44d0a8]
test ecx, ecx
je 0x4237cc
mov edx, dword [esp + 0x28]
xor esi, esi
mov edi, dword [0x44d0ac]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [edi + esi*8], 0x625b6034
je 0x4237c0
inc esi
cmp ecx, esi
jne 0x4237b0
jmp 0x4237cc
mov ecx, dword [edi + esi*8 + 4]
cmp ecx, edx
jne 0x423ef2
mov eax, dword [esp + 0x10]
and al, 1
jmp dword [0x449354]
mov eax, dword [esp + 0x74]
mov ecx, dword [esp + 0x6c]
mov byte [ecx + eax], 0
mov dword [esp + 0x10], 0
mov ebp, ecx
nop
nop
mov dword [esp + 0x28], 0xe8101614
mov dword [esp + 0x2c], 0xe41de210
mov word [esp + 0x30], 0xa1cb
mov byte [esp + 0x32], 0x84
lea eax, [esp + 0x33]
mov byte [eax + 4], 0
mov dword [eax], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0xf
ja 0x423869
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
mov ecx, dword [esp]
movzx ecx, byte [esp + ecx + 0x28]
lea edx, [eax + ecx]
add eax, 0x14
and eax, ecx
add eax, eax
sub edx, eax
add edx, 0xd52c7614
mov dword [esp + 4], edx
mov eax, dword [esp + 4]
add al, 0x66
mov ecx, dword [esp]
mov byte [esp + ecx + 0x28], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x10
jb 0x423830
movzx ecx, byte [esp + 0x28]
test cl, cl
je 0x4238b0
lea eax, [esp + 0x28]
mov edi, ebp
jmp 0x423887
movzx ecx, byte [eax]
test cl, cl
je 0x4238c2
movzx edx, byte [ebp]
test dl, dl
je 0x4238c0
inc ebp
inc eax
lea esi, [edi + 1]
cmp dl, cl
je 0x42389c
mov edi, esi
mov ebp, esi
je 0x423880
lea eax, [esp + 0x28]
jmp 0x423880
mov edi, ebp
jmp 0x4238c2
xor edi, edi
xor eax, eax
test edi, edi
sete al
jmp dword [eax*4 + 0x449224]
jmp dword [0x449234]
lea ebp, [edi + 0xa]
movzx eax, byte [edi + 0xa]
xor esi, esi
test al, al
je 0x4238d0
mov ecx, ebp
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp al, 0x22
je 0x423900
movzx eax, byte [ecx + 1]
inc ecx
test al, al
jne 0x4238f0
jmp 0x4238d0
mov esi, ecx
jmp dword [0x449234]
mov ecx, esi
not ecx
and ecx, ebp
mov edx, ebp
not edx
and edx, esi
mov ebx, edx
sub ebx, ecx
xor eax, eax
cmp ebx, 5
setb al
mov dword [esp + 0x20], ebx
jmp dword [eax*4 + 0x44923c]
xor eax, eax
cmp byte [esi - 1], 0x74
setne al
jmp dword [eax*4 + 0x449244]
xor eax, eax
cmp byte [esi - 2], 0x78
setne al
mov dword [esp + 0x1c], ebp
mov dword [esp + 0x14], esi
jmp dword [eax*4 + 0x44924c]
xor eax, eax
cmp byte [esi - 3], 0x74
setne al
jmp dword [eax*4 + 0x449254]
jmp dword [0x449268]
xor eax, eax
cmp byte [esi - 4], 0x2e
setne al
jmp dword [eax*4 + 0x44926c]
mov dword [esp + 0x78], edx
mov dword [esp + 0x7c], ecx
lea eax, [ebx*2 + 2]
mov dword [esp + 0x80], eax
jmp dword [0x449288]
mov eax, ebx
inc eax
jns 0x4239b6
mov eax, 0xffffffff
jmp 0x4239bd
jmp dword [0x44927c]
lea eax, [ebx*2 + 2]
push eax
call fcn.00409a50
add esp, 4
mov dword [esp + 0x28], 0
lea ecx, [eax + ebx*2]
mov esi, eax
mov dword [esp + 8], eax
mov dword [esp + 0xc], ecx
cmp eax, ecx
jae 0x423a30
mov esi, dword [esp + 8]
mov eax, dword [esp + 0x14]
cmp dword [esp + 0x1c], eax
jae 0x423a30
mov esi, dword [esp + 8]
mov ebp, dword [esp + 0x1c]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp byte [ebp], 0
je 0x423a30
lea eax, [esp + 0x28]
push eax
mov ebx, dword [esp + 0x18]
push ebx
push ebp
call fcn.0040d600
add esp, 0xc
movzx ecx, word [esp + 0x28]
mov word [esi], cx
add esi, 2
cmp esi, dword [esp + 0xc]
jae 0x423a30
add ebp, eax
cmp ebp, ebx
jb 0x423a00
mov word [esi], 0
push 0x60
push 3
push 0x120089
lea eax, [esp + 0x24]
push eax
push dword [esp + 0x18]
call fcn.00441b10
add esp, 0x14
mov ebx, dword [esp + 0x20]
mov esi, dword [esp + 0x14]
jmp case.0x421323.201
mov word [ebp], 0
push 0x60
push 3
push 0x120089
lea eax, [esp + 0x24]
push eax
push dword [esp + 0x18]
call fcn.00441b10
add esp, 0x14
mov ebp, dword [esp + 0x1c]
mov ebx, dword [esp + 0x20]
mov esi, dword [esp + 0x14]
jmp dword [0x44928c]
mov eax, ebx
inc eax
mov eax, dword [esp + 0x80]
jns 0x423aa3
mov eax, 0xffffffff
push eax
call fcn.00409a50
add esp, 4
mov ecx, esi
test esi, esi
jne 0x423acb
lea ecx, [edi + 9]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
lea esi, [ecx + 1]
cmp byte [ecx + 1], 0
mov ecx, esi
jne 0x423ac0
lea ecx, [eax + ebx*2]
add ecx, 2
mov dword [esp + 0x28], 0
add ecx, 0xfffffffe
mov ebp, eax
mov dword [esp + 8], eax
mov dword [esp + 0xc], ecx
cmp eax, ecx
jae 0x423a60
mov ebp, dword [esp + 8]
cmp dword [esp + 0x1c], esi
jae 0x423a60
mov ebp, dword [esp + 8]
mov ebx, dword [esp + 0x1c]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp byte [ebx], 0
je 0x423a60
lea eax, [esp + 0x28]
push eax
push esi
push ebx
call fcn.0040d600
add esp, 0xc
movzx ecx, word [esp + 0x28]
mov word [ebp], cx
add ebp, 2
cmp ebp, dword [esp + 0xc]
jae 0x423a60
add ebx, eax
cmp ebx, esi
jb 0x423b10
jmp 0x423a60
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x449294]
jmp dword [0x449324]
push dword [esp + 8]
call fcn.00409a60
add esp, 4
mov eax, dword [case.0x421323.198]
nop
nop
nop
nop
jmp eax
lea esi, [esp + 0x24]
jmp dword [0x44929c]
push 0
push esi
push dword [esp + 0x20]
call fcn.00441e80
add esp, 0xc
nop
nop
nop
nop
nop
push 0
push esi
push dword [esp + 0x20]
call fcn.00441e80
add esp, 0xc
jmp dword [0x4492a4]
mov esi, dword [esp + 0x24]
test eax, eax
setns al
cmp esi, 0x100000
setb cl
and cl, al
movzx eax, cl
jmp dword [eax*4 + 0x4492ac]
jmp dword [0x4492b8]
mov edi, esi
jmp 0x423eaf
push edi
call fcn.00409a60
add esp, 4
nop
nop
nop
nop
nop
nop
nop
push edi
call fcn.00409a60
add esp, 4
jmp dword [0x449310]
xor esi, esi
xor eax, eax
add eax, 0x1b
push eax
call fcn.00409a50
add esp, 4
mov dword [esp + 0xc], eax
mov byte [esp + 0x28], 0xdc
mov dword [esp + 0x29], 0x1010101
mov dword [esp + 0x2d], 0xf06f202
mov dword [esp + 0x31], 0xf3f7d3ba
mov dword [esp + 0x35], 0xf1cd08f5
mov dword [esp + 0x39], 0x17eb1513
mov dword [esp + 0x3d], 0xa6a9e1e1
mov word [esp + 0x41], 0x89db
mov byte [esp + 0x43], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x1b
ja 0x423c9f
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 + 0x28]
mov edx, eax
and edx, 0x19b29c80
xor eax, 0x99b29c80
lea edx, [eax + edx*2]
and eax, ecx
add edx, ecx
add eax, eax
sub edx, eax
mov dword [esp + 4], edx
mov eax, dword [esp + 4]
add al, 0xed
mov ecx, dword [esp]
mov byte [esp + ecx + 0x28], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x1c
jb 0x423c60
movzx ecx, byte [esp + 0x28]
mov eax, dword [esp + 0xc]
test cl, cl
je 0x423ccb
lea edx, [esp + 0x29]
mov eax, dword [esp + 0xc]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [eax], cl
inc eax
movzx ecx, byte [edx]
inc edx
test cl, cl
jne 0x423cc0
mov byte [eax], 0
sub ebx, esi
je 0x423d03
mov dword [esp + 0x14], edi
lea ecx, [esi + ebp]
mov edi, ebx
and edi, 3
je 0x423d07
mov dword [esp + 0x20], ebx
xor edx, edx
movzx ebx, byte [ecx]
cmp bl, 1
sbb ecx, 0xffffffff
mov byte [eax + edx], bl
inc edx
cmp edi, edx
jne 0x423ce6
add eax, edx
mov ebx, dword [esp + 0x20]
sub ebx, edx
mov edx, eax
jmp 0x423d07
mov edx, eax
jmp 0x423d55
sub esi, dword [esp + 0x78]
add esi, dword [esp + 0x7c]
cmp esi, 0xfffffffc
mov edi, dword [esp + 0x14]
ja 0x423d55
movzx edx, byte [ecx]
cmp dl, 1
sbb ecx, 0xffffffff
mov byte [eax], dl
movzx edx, byte [ecx]
cmp dl, 1
sbb ecx, 0xffffffff
mov byte [eax + 1], dl
movzx edx, byte [ecx]
cmp dl, 1
sbb ecx, 0xffffffff
mov byte [eax + 2], dl
mov esi, ebx
movzx ebx, byte [ecx]
cmp bl, 1
sbb ecx, 0xffffffff
lea edx, [eax + 4]
mov byte [eax + 3], bl
mov ebx, esi
mov eax, edx
add ebx, 0xfffffffc
jne 0x423d18
mov byte [edx], 0
mov ecx, dword [esp + 0x9c]
push dword [esp + 0x24]
push edi
mov esi, dword [esp + 0x14]
push esi
call fcn.0040a440
mov ebx, eax
jmp dword [0x4492e4]
push esi
call fcn.00409a60
add esp, 4
mov eax, dword [esp + 0x10]
and al, 1
or al, bl
mov dword [esp + 0x10], eax
mov eax, dword [case.0x421323.216]
jmp eax
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x4492c4]
jmp dword [0x4492fc]
jmp dword [0x449308]
jmp dword [0x449320]
mov eax, dword [esp + 0x18]
mov dword [esp + 0x28], 0x7a79787f
mov dword [esp + 0x2c], 0
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 7
ja 0x423e10
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp]
mov edx, dword [esp]
movzx edx, byte [esp + edx + 0x28]
add ecx, 0x6ea68513
xor ecx, edx
mov dword [esp + 4], ecx
mov ecx, dword [esp + 4]
add cl, 0x93
mov edx, dword [esp]
mov byte [esp + edx + 0x28], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 8
jb 0x423de0
mov ecx, dword [0x44d0a8]
test ecx, ecx
je 0x423e48
mov edx, dword [esp + 0x28]
xor esi, esi
mov edi, dword [0x44d0ac]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [edi + esi*8], 0x625b6034
je 0x423e40
inc esi
cmp ecx, esi
jne 0x423e30
jmp 0x423e48
mov ecx, dword [edi + esi*8 + 4]
cmp ecx, edx
jne 0x423e97
jmp dword [0x449324]
xor ecx, ecx
mov eax, dword [esp + 8]
jmp 0x423e68
add eax, 2
test dx, dx
je 0x423e79
mov esi, ecx
movzx edx, word [eax]
mov ecx, eax
cmp dx, 0x5c
je 0x423e60
mov ecx, esi
jmp 0x423e60
xor eax, eax
test esi, esi
setne al
jmp dword [eax*4 + 0x4492cc]
sub esi, dword [esp + 8]
sar esi, 1
inc esi
mov eax, ebx
sub eax, esi
jmp 0x423bf3
push eax
push 1
push dword [0x44d0b0]
push ecx
call fcn.0043f8b0
add esp, 0x10
jmp dword [0x449324]
push esi
call fcn.00409a50
add esp, 4
push 0
push edi
mov edi, eax
push eax
push dword [esp + 0x24]
call fcn.00441f70
add esp, 0x10
jmp dword [0x4492bc]
push esi
call fcn.00409a50
add esp, 4
push 0
push dword [esp + 0x28]
push eax
push dword [esp + 0x24]
call fcn.00441f70
add esp, 0x10
mov edi, dword [esp + 0x24]
jmp 0x423eaf
push eax
push 1
push dword [0x44d0b0]
push ecx
call fcn.0043f8b0
add esp, 0x10
mov eax, dword [esp + 0x10]
and al, 1
jmp dword [0x449354]
push ebp
push ebx
push edi
push esi
sub esp, 0x14
mov eax, dword [esp + 0x28]
mov byte [esp + 2], 0
mov byte [esp + 3], 0
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0
mov byte [esp + 0x10], 0
cmp byte [eax], 0
je 0x4240ee
mov esi, ecx
mov dword [esp + 4], 0
lea edi, [esp + 3]
lea ebx, [esp + 2]
jmp 0x423f73
mov dword [esp + 4], ebp
xor esi, esi
mov eax, dword [esp + 0x28]
cmp byte [eax], 0
je 0x4240ee
lea ecx, [esp + 8]
push edi
push ebx
call fcn.00424550
test eax, eax
je 0x4240ee
mov ebp, eax
cmp byte [esp + 2], 0
jne 0x423f99
cmp byte [ebp], 0
je 0x4240ee
test esi, esi
je 0x424000
xor ebx, ebx
nop
cmp byte [ebp + ebx], 0
lea ebx, [ebx + 1]
jne 0x423fa0
push ebx
call fcn.00409a50
add esp, 4
mov dword [esi], eax
mov ecx, ebx
shr ecx, 2
mov edx, ebp
mov edi, eax
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
mov ecx, ebx
and ecx, 0xfffffffc
add eax, ecx
add ebp, ecx
mov ecx, ebx
shr ecx, 1
and ecx, 1
mov edx, ebp
mov edi, eax
xchg esi, edx
rep movsw word es:[edi], word [esi]
xchg esi, edx
mov ecx, ebx
inc cl
test cl, 1
jne 0x423ff3
and ebx, 2
movzx ecx, byte [ebp + ebx]
mov byte [eax + ebx], cl
mov ebp, esi
lea edi, [esp + 3]
jmp 0x4240a4
push 0x20
call fcn.00409a50
add esp, 4
mov esi, eax
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov dword [eax + 0x18], 0xffffffff
mov dword [eax + 0x14], 0
mov dword [eax + 0x10], 0
xor ebx, ebx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp byte [ebp + ebx], 0
lea ebx, [ebx + 1]
jne 0x424040
push ebx
call fcn.00409a50
add esp, 4
mov dword [esi], eax
mov ecx, ebx
shr ecx, 2
mov edx, ebp
mov edi, eax
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
mov ecx, ebx
and ecx, 0xfffffffc
add eax, ecx
add ebp, ecx
mov ecx, ebx
shr ecx, 1
and ecx, 1
mov edx, ebp
mov edi, eax
xchg esi, edx
rep movsw word es:[edi], word [esi]
xchg esi, edx
mov ecx, ebx
inc cl
test cl, 1
jne 0x424093
and ebx, 2
movzx ecx, byte [ebp + ebx]
mov byte [eax + ebx], cl
mov eax, dword [esp + 4]
test eax, eax
lea edi, [esp + 3]
je 0x4240a2
mov dword [eax + 4], esi
mov ebp, esi
lea ebx, [esp + 2]
lea esi, [esp + 8]
mov ecx, esi
push edi
push ebx
call fcn.00424550
cmp byte [esp + 3], 0
je 0x4240c5
mov ecx, esi
push edi
push ebx
call fcn.00424550
test eax, eax
je 0x423f60
cmp byte [eax], 0x7b
jne 0x423f60
cmp byte [esp + 2], 0
jne 0x423f60
mov ecx, ebp
push esi
call fcn.004247c0
jmp 0x423f60
mov al, 1
add esp, 0x14
pop esi
pop edi
pop ebx
pop ebp
ret 8
fadd qword [ecx]
invalid
inc ecx
add byte [eax - 0x16], ah
inc ecx
add byte [esi - 0x16], ah
inc ecx
add byte [ebx - 0x15], bh
inc ecx
add byte [eax + 0x7b0041ec], dl
jmp 0x4486f8
inc ecx
add ch, al
in al, dx
inc ecx
add byte [ecx], al
add byte [eax], al
add byte [ecx], al
add byte [eax], al
add byte [eax + 0x10041f2], dh
add byte [eax], al
add al, al
inc ecx
add al, al
inc ecx
add dl, al
inc ecx
add al, al
inc ecx
add byte [eax - 0x6ffbe14], dh
in al, dx
inc ecx
add byte [eax - 0xf], dh
inc ecx
add byte [eax], ah
in eax, dx
inc ecx
add byte [eax], ah
in eax, dx
inc ecx
add byte [ebx - 0x13], cl
inc ecx
add byte [eax + 0x570041f1], dh
in eax, dx
mov al, 0xf1
inc ecx
add byte [edi - 0x13], dl
inc ecx
add byte [eax - 0x13], dh
inc ecx
add byte [eax - 0x13], dh
inc ecx
add byte [edx - 0x13], dh
inc ecx
add byte [eax - 0x13], dh
inc ecx
add byte [ebp + ebp*8 - 0x125bffbf], cl
inc ecx
add byte [edx - 0x12], bh
inc ecx
add byte [esi - 0x11], dh
inc ecx
add byte [ebp - 0x6cffbe13], bl
out dx, al
inc ecx
add byte [edx - 0x10], bh
inc ecx
add byte [ecx + 0x80041f0], al
fld qword [ecx]
adc al, 0xdd
inc ecx
add byte [ecx], al
add byte [eax], al
add byte [ecx], al
add byte [eax], al
add byte [ebx*8 + 0x10041], dl
add byte [eax], al
and dh, dh
inc ecx
add byte [esi], ah
test byte [ecx], 0x40
test byte [ecx], 0x37
test byte [ecx], 0x37
test byte [ecx], 0x26
test byte [ecx], 0x80
stc
inc ecx
add byte [eax - 0x6dffbe07], dl
stc
inc ecx
add byte [eax + 1], ah
inc edx
add byte [eax + 1], ah
inc edx
add byte [esi + 1], ah
inc edx
add byte [ecx - 0x4fffbe07], bl
sti
inc ecx
add byte [ebx + edi*8 + 0x41], ah
add byte [ebx + edi*8 + 0x41], ah
add byte [ebx + edi*8 + 0x41], ah
add byte [eax - 0x6fffbe05], dl
sti
inc ecx
add byte [edx - 0x6dffbe05], dl
sti
inc ecx
add al, dl
sti
inc ecx
add byte [ebx + eax + 0x42], ch
add byte [eax - 4], al
inc ecx
add byte [ecx], al
std
inc ecx
add byte [eax - 3], dl
inc ecx
add byte [ebp - 3], dh
inc ecx
add byte [ebp - 3], dh
inc ecx
add byte [ebp - 3], dh
inc ecx
add byte [ebx + eax + 0x42], ch
add byte [ebx + eax + 0x42], ch
add byte [eax], dh
inc byte [ecx]
sub bh, dh
inc ecx
add byte [eax], dl
inc dword [ecx]
mov dh, 0xff
inc ecx
add byte [esi + 0x410041ff], dh
std
inc ecx
add byte [edi + edi*8 - 0x16ffbf], bh
inc ecx
add al, dh
cld
inc ecx
add al, dh
cld
inc ecx
add byte [esi + 0x430041fb], bl
add byte [edx], al
adc byte [ecx], al
inc edx
add byte [eax + 1], al
inc edx
add byte [ecx + eax], ah
inc edx
add byte [eax + 1], al
inc edx
add byte [eax + 0x6c0041fb], dh
add eax, dword [edx]
jo 0x448807
add byte [ebx + eax + 0x42], ch
add byte [eax - 7], dh
inc ecx
add byte [eax + 0x660041f9], al
add dword [edx], eax
jp 0x44881b
inc edx
add byte [ebp + 3], cl
inc edx
add byte [esi + 3], dl
inc edx
add byte [esi + 3], dl
inc edx
add byte [eax + 0x600041f9], dl
add dword [edx], eax
nop
sti
inc ecx
add byte [eax - 2], ah
inc ecx
add al, ah
inc dword [ecx]
pop ebp
cld
inc ecx
add byte [ebx + 0xe], ch
inc edx
add byte [edx + 0x6b004208], cl
push cs
inc edx
add byte [esi + 0x7f004208], ah
or eax, 0x9900042
inc edx
add byte [eax - 0x53ffbdf7], dl
or dword [edx], eax
lodsb al, byte [esi]
or dword [edx], eax
add dword [eax], eax
add byte [eax], al
or dword [esi], 0x9d40042
inc edx
add byte [ecx], cl
or al, byte [edx]
or dword [esi], 0xa110042
inc edx
add byte [ecx + 0x2300420e], al
or al, byte [edx]
or dword [esi], 0xe810042
inc edx
add byte [eax + 0xa], ah
inc edx
add byte [ebx + 0xa], dl
inc edx
add byte [eax + 0xa], ah
inc edx
add byte [eax - 0x7dffbdf6], al
or al, byte [edx]
mov ecx, dword [edx]
inc edx
add byte [edi - 0x50ffbdf6], ch
or al, byte [edx]
mov ebp, 0xf500420a
or al, byte [edx]
pop ebp
or al, 66
add byte [eax + 0xd], dh
inc edx
add byte [ebx + 0xc], ah
inc edx
add byte [ebx + 0xc], ah
inc edx
add byte [ebx - 0xffbdf4], cl
or al, 0x42
add ch, bh
or al, 0x42
add byte [esi - 0xfffbdf4], al
or dword [edx], eax
lock or dword [edx], eax
lock or dword [edx], eax
add dword [eax], eax
add byte [eax], al
or dword [esi], 0xd8e0042
inc edx
add dh, ah
or dword [edx], eax
aas
push cs
inc edx
add byte [ebx + 0xe], cl
inc edx
add byte [ebx + 0xe], cl
inc edx
add byte [edi + 0xd], bh
inc edx
add byte [ebx + 0xe], ch
inc edx
add byte [eax + 0x1004209], dl
add byte [eax], al
add byte [eax + 0x6700420a], al
or eax, 0x10042
add byte [eax], al
nop
push cs
inc edx
add byte [eax - 0x5bffbdf2], dl
push cs
inc edx
add byte [ecx - 0x5fffbdf2], ch
cmovb eax, dword [eax]
and cl, byte [edi]
inc edx
add byte [edi + 0x5f00420f], ah
and eax, 0x255f0042
inc edx
add byte [eax + 0x12], ah
inc edx
add dh, dl
adc byte [edx], al
add dword [ecx], edx
inc edx
add byte [edx - 0x3dffbdef], bh
adc dword [edx], eax
rcl byte [ecx]
inc edx
add al, dl
adc dword [edx], eax
xor byte [ebx], dl
inc edx
add byte [esi - 0x4fffbdee], bl
adc al, byte [edx]
mov edi, 0xbf004212
adc al, byte [edx]
mov edi, 0xed004212
adc al, byte [edx]
aad 0x12
inc edx
add ch, ch
adc al, byte [edx]
xor byte [ebx], dl
inc edx
add byte [eax + 0x12], ah
inc edx
add byte [edi + 0x25], bl
inc edx
add byte [eax - 0x5fffbdf1], dl
cmovb eax, dword [eax]
and cl, byte [edi]
inc edx
add byte [ebp + 0x13], cl
inc edx
add byte [eax + 0x13], ah
inc edx
add byte [edx + 0x13], ah
inc edx
add byte [eax], dh
cmovb eax, dword [eax]
jl 0x4489ba
inc edx
add byte [esi - 0x48ffbdec], bl
adc al, 0x42
add byte [esi + 0x15], ch
inc edx
add byte [ebp - 0x59ffbdeb], cl
adc eax, 0x15d30042
inc edx
add bl, dl
adc eax, 0x15d30042
inc edx
add byte [edx], dl
push ss
inc edx
add bl, dl
adc eax, 0x15d30042
inc edx
add bl, dl
adc eax, 0x16120042
inc edx
add byte [edi + 0x25], bl
inc edx
add byte [edx], ch
push ss
inc edx
add dh, ch
pop ds
inc edx
add byte [edi + 0x25], bl
inc edx
add bh, dl
push ss
inc edx
add byte [edx + 0x20], al
inc edx
add byte [edi + 0x25], bl
inc edx
add byte [edi + 0x25], bl
inc edx
add bh, dl
push ss
inc edx
add bh, dl
push ss
inc edx
add ch, bl
push ss
inc edx
add cl, bh
push ss
inc edx
add cl, bh
push ss
inc edx
add byte [ecx], al
add byte [eax], al
add cl, bh
push ss
inc edx
add byte [edx], al
pop ss
inc edx
add byte [ebx], cl
pop ss
inc edx
add byte [ebx], cl
pop ss
inc edx
add byte [eax - 0x61ffbde9], bl
pop ss
inc edx
add bh, dl
pop ss
inc edx
add byte [edx], dl
sbb eax, 0x17ed0042
inc edx
add byte [0x1700421a], cl
sbb al, 0x42
add byte [ebx + 0x1d], dh
inc edx
add byte [edx - 0x2affbde3], ah
sbb eax, 0x1de80042
inc edx
add byte [edi + 0x25], bl
inc edx
add byte [esi], ch
push ds
inc edx
add byte [eax], cl
and al, byte [edx]
pop edi
and eax, 517668930
inc edx
add byte [esi], dh
and al, byte [edx]
pop ebp
and al, byte [edx]
pop ebp
and al, byte [edx]
pop ebp
and al, byte [edx]
ja 0x448a88
inc edx
add byte [edi + 0x25], bl
inc edx
add ch, al
and al, byte [edx]
hlt
pushal
and eax, dword [edx]
pushal
and eax, dword [edx]
sahf
and eax, dword [edx]
sahf
and eax, dword [edx]
imul esp, dword [ebx], 0x42
add byte [edx - 1107279325], ch
and eax, dword [edx]
inc ebp
and al, 66
add byte [0x30004224], dh
and eax, 0x25320042
inc edx
add byte [edx], dh
and eax, 0x253b0042
inc edx
add byte [eax], ah
and al, byte [edx]
and byte [edx], ah
inc edx
add byte [eax], ah
and al, byte [edx]
fistp dword [esi]
inc edx
add al, ah
push ds
inc edx
add dl, ah
push ds
inc edx
add dl, ah
push ds
inc edx
add bl, ch
push ds
inc edx
add byte [edi], al
pop ds
inc edx
add byte [edi], al
pop ds
inc edx
add byte [eax], dl
pop ds
inc edx
add byte [ebx], bl
pop ds
inc edx
add byte [ebx], bl
pop ds
inc edx
add byte [ebx], ah
sbb al, 0x42
add byte [ecx], dh
sbb al, 0x42
add byte [edi + 0x4c00421f], dh
sbb al, 0x42
add bh, al
pop ds
inc edx
add cl, dh
sbb al, 0x42
add dh, bh
sbb al, 0x42
add byte [edi + 0x25], bl
inc edx
add byte [eax], dl
sbb eax, 0x1d100042
inc edx
add byte [edx], dl
sbb eax, 0x1d120042
inc edx
add byte [edx + 0x13], ah
inc edx
add byte [edi + 0x60004212], ah
adc eax, dword [edx]
add dword [eax], eax
add byte [eax], al
pop ss
inc edx
add byte [eax], dh
and eax, 0x1ee00042
inc edx
add byte [eax], dl
sbb eax, 0x347d0042
inc edx
add byte [ecx], al
add byte [eax], al
add byte [ebp + 0x34], bh
inc edx
add byte [eax + 0x34], cl
inc edx
add byte [ecx + 0x29], cl
inc edx
add byte [eax], ah
sub eax, dword [edx]
add dword [eax], eax
add byte [eax], al
and byte [ebx], ch
inc edx
add byte [eax], ah
sub eax, dword [edx]
inc eax
sub eax, dword [edx]
inc eax
sub eax, dword [edx]
inc edx
sub eax, dword [edx]
push eax
sub eax, dword [edx]
xchg byte [ebx], ch
inc edx
add ch, bl
inc edx
add byte [esi + 0x31], dh
inc edx
add byte [edx - 0x4fffbdce], dl
xor al, byte [edx]
mov edi, 0xbf004232
xor al, byte [edx]
xor dword [bp + si], eax
fidiv word [edx]
inc edx
add dl, ch
xor al, byte [edx]
stosb byte es:[edi], al
sub eax, dword [edx]
stosb byte es:[edi], al
sub eax, dword [edx]
mov al, 0x2b
inc edx
add byte [ecx - 0x46ffbdd5], bh
sub eax, dword [edx]
shr byte [ebx], 0x42
add dl, al
sub eax, dword [edx]
ret 0x422b
sti
inc ecx
add byte [eax - 0x6fffbe05], dh
sti
inc ecx
add byte [eax - 0x6fffbe05], dl
sti
inc ecx
add byte [edx - 0x61ffbe05], dl
sti
inc ecx
add al, dl
sti
inc ecx
add byte [eax - 4], al
inc ecx
add byte [ecx], al
std
inc ecx
add byte [ecx - 3], al
inc ecx
add byte [eax - 3], dl
inc ecx
add byte [esi + 0x750041ff], dh
std
inc ecx
add byte [edx], ch
inc byte [ecx]
xor dh, bh
inc ecx
add byte [eax - 2], ah
inc ecx
add byte [eax], dl
inc dword [ecx]
pushal
inc byte [ecx]
mov dh, 0xff
inc ecx
add byte [edi + edi*8 - 0x30fffbf], bh
inc ecx
add al, ah
inc dword [ecx]
jmp 0xe044d044
or dword [edx], eax
jg 0x448ea7
inc edx
add byte [eax - 0x6fffbdf7], dl
or dword [edx], eax
lodsb al, byte [esi]
or dword [edx], eax
nop
or dword [edx], eax
add dword [eax], eax
add byte [eax], al
add dword [eax], eax
add byte [eax], al
add dword [eax], eax
add byte [eax], al
or dword [esi], 0x9d40042
inc edx
add byte [ecx], cl
or al, byte [edx]
out 9, al
inc edx
add byte [esi + 0x5300420d], cl
or al, byte [edx]
pushal
or al, byte [edx]
or byte [edx], 0x42
add byte [eax - 2147466742], al
or al, byte [edx]
or byte [edx], 0x42
add al, dh
add byte [eax + 0x1004209], dl
add byte [eax], al
add byte [ecx], al
add byte [eax], al
add byte [ecx], al
add byte [eax], al
add byte [ecx - 0x2bffbdf2], al
or dword [edx], eax
or dword [edx], ecx
inc edx
add dh, ah
or dword [edx], eax
mov cs, word [0xa530042]
inc edx
add byte [eax + 0xa], ah
inc edx
add byte [eax - 0x7fffbdf6], al
or al, byte [edx]
or byte [edx], 0x42
add byte [edx - 268418550], al
or dword [edx], eax
mov ecx, dword [edx]
inc edx
add al, dh
or dword [edx], eax
mov ebp, 0xf000420a
or dword [edx], eax
cmc
or al, byte [edx]
pop ebp
or al, 66
add byte [ebx + 0xc], ah
inc edx
add byte [eax + 0xd], dh
inc edx
add byte [edi + 0xd], ah
inc edx
add byte [ebx + 0xc], ah
inc edx
add byte [edi + 0xd], ah
inc edx
add byte [esi - 0x74ffbdf4], al
or al, 0x42
add ch, bh
or al, 0x42
add bh, bh
or al, 0x42
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 + 0x3f00420e], al
push cs
inc edx
add byte [ebx + 0xe], cl
inc edx
add byte [edx], ah
cmovb eax, dword [eax]
cmpsd dword [esi], dword es:[edi]
cmovb eax, dword [eax]
salc
adc byte [edx], al
pushal
adc al, byte [edx]
rcl byte [ecx]
inc edx
add byte [ecx], al
adc dword [edx], eax
rcl byte [ecx]
inc edx
add byte [edx - 0x3dffbdef], bh
adc dword [edx], eax
rcl byte [ecx]
inc edx
add byte [esi + 0x30004212], bl
adc al, byte [edx]
xor byte [ebx], dl
inc edx
add byte [eax - 0x58ffbdee], dh
adc al, byte [edx]
mov edi, 0xb0004212
adc al, byte [edx]
aad 0x12
inc edx
add ch, ch
adc al, byte [edx]
xor byte [ebx], dl
inc edx
add byte [eax - 0x58ffbdee], dh
adc al, byte [edx]
mov edi, 0xb0004212
adc al, byte [edx]
aad 0x12
inc edx
add ch, ch
adc al, byte [edx]
mov al, byte [0x9000420f]
cmovb eax, dword [eax]
and cl, byte [edi]
inc edx
add byte [eax + 0x3000420f], ah
cmovb eax, dword [eax]
dec ebp
adc eax, dword [edx]
pushal
adc eax, dword [edx]
pushal
adc eax, dword [edx]
pushal
adc eax, dword [edx]
bound edx, qword [ebx]
inc edx
add byte [esp + edx + 0x42], bh
add byte [esi + 0x6e004214], bl
adc eax, 0x14b70042
inc edx
add byte [eax - 0x72ffbde9], bl
pop ss
inc edx
add byte [ebp + 0xb004215], cl
pop ss
pop ss
inc edx
add byte [ebp + 0xb004215], cl
pop ss
inc edx
add byte [esi - 0x6ffbdeb], ah
push ss
inc edx
add bl, dl
adc eax, 0x16d70042
inc edx
add byte [edx], ch
push ss
inc edx
add bh, dl
push ss
inc edx
add dh, ch
pop ds
inc edx
add bh, dl
push ss
inc edx
add byte [edx + 0x20], al
inc edx
add ch, bl
push ss
inc edx
add cl, bh
push ss
inc edx
add byte [ecx], al
add byte [eax], al
add byte [ecx], al
add byte [eax], al
add cl, bh
push ss
inc edx
add byte [ecx], al
add byte [eax], al
add byte [edx], al
pop ss
inc edx
add byte [ebx], cl
pop ss
inc edx
add byte [esi - 0x28ffbde9], bl
pop ss
inc edx
add ch, ch
pop ss
inc edx
add byte [edx], dl
sbb eax, 0x1a0d0042
inc edx
add bl, dh
pop ss
inc edx
add byte [edi], dl
sbb al, 0x42
add byte [0x2300421a], cl
sbb al, 0x42
add byte [ebx + 0x1d], dh
inc edx
add byte [ebx], bl
pop ds
inc edx
add byte [edx + 0x700421d], ah
pop ds
inc edx
add ch, dl
sbb eax, 0x1ee20042
inc edx
add byte [esi], ch
push ds
inc edx
add bl, bl
push ds
inc edx
add byte [eax], cl
and al, byte [edx]
fistp dword [esi]
inc edx
add byte [esi], dh
and al, byte [edx]
and byte [edx], ah
inc edx
add byte [edi + 0x22], dh
inc edx
add byte [0xc5004223], ch
and al, byte [edx]
mov al, 0x22
inc edx
add ah, dh
and al, byte [edx]
stosb byte es:[edi], al
and eax, dword [edx]
jl 0x44909d
inc edx
add byte [esi + 0x60004223], bl
and eax, dword [edx]
stosb byte es:[edi], al
and eax, dword [edx]
imul esp, dword [ebx], 0x42
add byte [edx], dh
and eax, 0x23be0042
inc edx
add byte [0x45004224], dh
and al, 0x42
add byte [eax], dh
and eax, 0x25300042
inc edx
add byte [edx], dh
and eax, 0x25300042
inc edx
add byte [ebx], bh
and eax, 0x22200042
inc edx
add al, ah
push ds
inc edx
add al, ah
push ds
inc edx
add dl, ah
push ds
inc edx
add al, ah
push ds
inc edx
add bl, ch
push ds
inc edx
add byte [edi], al
pop ds
inc edx
add byte [eax], dl
pop ds
inc edx
add byte [ebx], bl
pop ds
inc edx
add byte [ecx], dh
sbb al, 0x42
add byte [edi - 0x38ffbde1], dh
pop ds
inc edx
add byte [esp + ebx + 0x42], cl
add cl, dh
sbb al, 0x42
add dh, bh
sbb al, 0x42
add byte [eax], dl
sbb eax, 0x1d100042
inc edx
add byte [edx], dl
sbb eax, 0x1d100042
inc edx
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 [ebp + 0x34], bh
inc edx
add byte [eax + 0x34], cl
xor al, 0x42
add byte [ecx + 0x29], cl
inc edx
add byte [esi + 0x34], cl
inc edx
add byte [esp + esi + 0x42], dl
add bh, dh
sub al, byte [edx]
and byte [ebx], ch
inc edx
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 [eax], ah
sub eax, dword [edx]
inc eax
sub eax, dword [edx]
inc eax
sub eax, dword [edx]
inc eax
sub eax, dword [edx]
inc edx
sub eax, dword [edx]
ret 0x422b