Function at 0x422db2
Capabilities:
Encode data using xor

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x98
mov dword [esp + 0x1c], 0x9151af4b
mov dword [esp + 0x20], 0x95049302
mov dword [esp + 0x24], 0x99399752
mov dword [esp + 0x28], 0x9d3d9b0e
mov dword [esp + 0x2c], 0x813c9f7b
mov dword [esp + 0x30], 0x852c8336
mov dword [esp + 0x34], 0x89268713
mov dword [esp + 0x38], 0x8d298b2e
mov dword [esp + 0x3c], 0x71d28f1c
mov dword [esp + 0x40], 0x75e673db
mov dword [esp + 0x44], 0x79c477d2
mov dword [esp + 0x48], 0x7dee7bca
mov dword [esp + 0x4c], 0x61c67fd1
mov dword [esp + 0x50], 0x65c863cb
mov dword [esp + 0x54], 0x69fb67c3
lea eax, [esp + 0x58]
mov word [esp + 0x58], 0x6b6a
xor ecx, ecx
xor edx, edx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ebx, byte [esp + edx + 0x1c]
mov esi, ecx
and esi, 0x3c
mov edi, edx
xor edi, 0x4c6f3b5e
add edi, esi
mov esi, edi
not esi
add edi, esi
add edi, esi
or esi, ebx
not ebx
mov ebp, 0xfe
sub ebp, edi
or ebp, ebx
and esi, ebp
mov ebx, esi
not ebx
and ebx, 0xf
and esi, 0xf0
sub ebx, esi
mov byte [esp + edx + 0x1c], bl
inc edx
add ecx, 2
cmp edx, 0x3e
jne case.default.0x4212dd
lea ebp, [esp + 0x5a]
lea edx, [esp + 0x1c]
mov edi, ebp
mov ecx, 0xf
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
lea edi, [esp + 0x96]
mov ecx, 1
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
lea edi, [esp + 0x18]
push edi
push 0
push 0
push 0x1e
push ebp
push 0
call dword [0x446b2c]
xor ecx, ecx
cmp eax, 0xc0000023
setne cl
xor eax, eax
jmp dword [ecx*4 + 0x4414a8]
mov ebx, dword [esp + 0x18]
test ebx, ebx
jns 0x4212f3
mov eax, 0xffffffff
jmp 0x4212f6
lea eax, [ebx + ebx]
push eax
call fcn.004082a0
add esp, 4
mov esi, eax
push edi
push ebx
push eax
push 0x1e
push ebp
push 0
call dword [0x446b2c]
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x4414b0]
xor ebx, ebx
xor eax, eax
jmp dword [0x4414b8]
mov dword [esp], 0xb70e59
mov dword [esp + 4], 0x4bd02b4
mov dword [esp + 8], 0x18a206a1
mov dword [esp + 0xc], 0x1cb91aab
mov dword [esp + 0x10], 0x10ad1ea4
mov dword [esp + 0x14], 0x141312b5
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, eax
add cl, 0x25
xor cl, byte [esp + eax]
add cl, 0xd8
mov byte [esp + eax], cl
inc eax
cmp eax, 0x18
jne 0x421360
mov eax, esp
mov edx, eax
mov ecx, 6
lea ebx, [esp + 0x1c]
mov edi, ebx
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
lea edi, [esp + 0x34]
lea edx, [esp + 0x18]
xor ecx, ecx
xchg esi, edx
rep movsw word es:[edi], word [esi]
xchg esi, edx
mov dword [esp + 0xc], 0
mov dword [esp + 4], 0
mov byte [esp + 0x10], 1
mov dword [esp], ebx
mov dword [esp + 8], esi
push 0
push 0
push eax
push dword [esp + 0xb8]
call fcn.0041cea0
add esp, 0x10
mov ebx, eax
jmp dword [0x4414b8]
push esi
call fcn.004082b0
add esp, 4
mov eax, ebx
mov ecx, dword [case.0x4212dd.8]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp ecx
add esp, 0x98
pop esi
pop edi
pop ebx
pop ebp
ret
lea eax, [esp + 0x70]
lea ecx, [esp + 0x34]
push 0
push 0
push 0
push 0
push eax
push ecx
push 0
push 0
push dword [esp + 0x58]
call fcn.0043ac00
add esp, 0x24
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x4414d8]
xor eax, eax
jmp 0x4236a6
xor ecx, ecx
xor eax, eax
mov dword [esp + 0x44], 0
cmp ecx, dword [esp + 0x34]
setb al
mov dword [esp + 8], 0
jmp dword [eax*4 + 0x4414e0]
mov eax, dword [esp + 4]
mov word [eax], 0
mov eax, dword [esp + 0x44]
mov ecx, eax
and cl, 1
movzx ecx, cl
jmp dword [ecx*4 + 0x4414e8]
movzx ecx, word [esp + 0x11e4]
xor edi, edi
test cx, cx
je 0x4235db
lea eax, [esp + 0x11e6]
jmp 0x4235ac
mov ecx, dword [esp + 8]
inc ecx
xor eax, eax
mov dword [esp + 8], ecx
cmp ecx, dword [esp + 0x34]
setb al
jmp dword [eax*4 + 0x4414e0]
mov edi, dword [esp + 0x70]
mov eax, edi
inc eax
lea eax, [edi + edi + 2]
jns 0x42158b
mov eax, 0xffffffff
push eax
call fcn.004082a0
add esp, 4
mov ebp, eax
mov dword [esp + 0x6c], edi
lea eax, [esp + 0x6c]
push eax
push ebp
push dword [esp + 0x10]
push dword [esp + 0x44]
call fcn.0043aa00
add esp, 0x10
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x4414f0]
jmp dword [0x441580]
lea eax, [esp + 0x30]
push dword [esp + 0x38]
push 0
push 0x20019
push eax
push ebp
call fcn.0043a920
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x4414f8]
mov dword [esp + 0x3c], ebp
jmp dword [0x441500]
mov dword [esp + 0x76], 0x77df7539
mov dword [esp + 0x7a], 0x7bc879db
mov dword [esp + 0x7e], 0x7fcd7dd3
mov dword [esp + 0x82], 0x43e441ef
mov dword [esp + 0x86], 0x471a45f0
mov dword [esp + 0x8a], 0x4be3491f
mov dword [esp + 0x8e], 0x4fea4de2
mov dword [esp + 0x92], 0x53e551ff
mov dword [esp + 0x96], 0x573655e7
mov dword [esp + 0x9a], 0x5bff5915
mov dword [esp + 0x9e], 0x5fed5def
mov dword [esp + 0xa2], 0xa305a101
mov dword [esp + 0xa6], 0xa708a50d
mov dword [esp + 0xaa], 0xabcaa90f
mov dword [esp + 0xae], 0xaf1badff
mov dword [esp + 0xb2], 0xb301b112
mov dword [esp + 0xb6], 0xb705b50d
mov dword [esp + 0xba], 0xbb1fb90c
mov dword [esp + 0xbe], 0xbfe2bd11
mov dword [esp + 0xc2], 0x833081d0
mov dword [esp + 0xc6], 0x8720852b
mov dword [esp + 0xca], 0x8b268921
mov dword [esp + 0xce], 0x8f3d8d29
mov dword [esp + 0xd2], 0x93eb91cc
mov dword [esp + 0xd6], 0x97e195e7
mov dword [esp + 0xda], 0x9bd999ed
mov dword [esp + 0xde], 0x9fd89dda
mov dword [esp + 0xe2], 0xe396e190
mov dword [esp + 0xe6], 0xe795e595
mov dword [esp + 0xea], 0xeb9be999
mov dword [esp + 0xee], 0xef4aed9d
mov dword [esp + 0xf2], 0xf3b0f183
mov dword [esp + 0xf6], 0xf78ef58c
mov dword [esp + 0xfa], 0xfb8af9b9
mov dword [esp + 0xfe], 0xff8ffd8c
mov dword [esp + 0x102], 0xc3b6c1b0
mov dword [esp + 0x106], 0xc7b4c586
mov dword [esp + 0x10a], 0xcbbcc989
mov dword [esp + 0x10e], 0xcfb9cdba
mov dword [esp + 0x112], 0xd38ed1a6
mov word [esp + 0x116], 0xd5d4
xor eax, eax
nop
nop
nop
nop
nop
nop
movzx edx, byte [esp + eax + 0x76]
mov esi, eax
and esi, 0x2c
xor esi, 0x2ac7832c
mov ecx, eax
and ecx, 0xd3
sub ecx, esi
mov edi, ecx
and edi, edx
mov esi, edi
and esi, 2
mov ebx, edi
or ebx, 0xfd
inc ebx
mov ebp, edi
and ebp, 0xfffffffd
imul ebp, ebx
or edi, 2
imul edi, esi
sub ebp, edi
add ecx, edx
add ecx, ebp
add cl, 0x60
mov byte [esp + eax + 0x76], cl
inc eax
cmp eax, 0xa2
jne 0x4217c0
lea edi, [esp + 0x918]
lea eax, [esp + 0x76]
mov ecx, 0x28
xchg esi, eax
rep movsd dword es:[edi], dword [esi]
xchg esi, eax
lea eax, [esp + 0x116]
lea edi, [esp + 0x9b8]
mov ecx, 1
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov dword [esp + 0x76], 0xd5bdd39f
mov dword [esp + 0x7a], 0xd94ad7b5
mov dword [esp + 0x7e], 0xdd4fdbb5
mov dword [esp + 0x82], 0xc1a6dfb1
mov dword [esp + 0x86], 0xc5b8c356
mov dword [esp + 0x8a], 0xc9a1c7b1
mov dword [esp + 0x8e], 0xcda8cba4
mov dword [esp + 0x92], 0xf167cfa1
mov dword [esp + 0x96], 0xf5d4f361
mov dword [esp + 0x9a], 0xf98cf7b8
mov dword [esp + 0x9e], 0xfdbffb86
mov dword [esp + 0xa2], 0xe172ff6b
mov dword [esp + 0xa6], 0xe581e370
mov dword [esp + 0xaa], 0xe97ce788
mov dword [esp + 0xae], 0xed89eb9c
mov dword [esp + 0xb2], 0x1183ef7c
mov dword [esp + 0xb6], 0x157b137b
mov dword [esp + 0xba], 0x19641778
mov dword [esp + 0xbe], 0x1d751b6d
mov dword [esp + 0xc2], 0x1641f70
mov dword [esp + 0xc6], 0x593036d
mov dword [esp + 0xca], 0x9280795
mov dword [esp + 0xce], 0xd690b47
mov dword [esp + 0xd2], 0x31a30f9d
mov dword [esp + 0xd6], 0x35533353
mov dword [esp + 0xda], 0x3956375f
mov dword [esp + 0xde], 0x3d1c3b5d
mov dword [esp + 0xe2], 0x21b53f4d
mov dword [esp + 0xe6], 0x25b72340
mov dword [esp + 0xea], 0x29bb27bf
mov dword [esp + 0xee], 0x2d492bbe
mov dword [esp + 0xf2], 0x512c2f43
mov dword [esp + 0xf6], 0x55c65322
mov dword [esp + 0xfa], 0x593e5739
mov dword [esp + 0xfe], 0x5d305b33
mov dword [esp + 0x102], 0x41d35f3b
mov dword [esp + 0x106], 0x450b433e
mov dword [esp + 0x10a], 0x49dc47d3
mov dword [esp + 0x10e], 0x4d234b26
mov dword [esp + 0x112], 0x711b4f21
mov dword [esp + 0x116], 0x752d730e
mov dword [esp + 0x11a], 0x792f7725
mov dword [esp + 0x11e], 0x7d3f7b2f
mov dword [esp + 0x122], 0x61267f38
mov dword [esp + 0x126], 0x65306332
mov dword [esp + 0x12a], 0x693b6737
mov dword [esp + 0x12e], 0x6d3d6b3b
mov dword [esp + 0x132], 0x91f46f3f
mov dword [esp + 0x136], 0x95d693c1
mov dword [esp + 0x13a], 0x99c097ce
mov dword [esp + 0x13e], 0x9dcc9bdb
mov dword [esp + 0x142], 0x81d19fce
mov dword [esp + 0x146], 0x85d083d2
mov dword [esp + 0x14a], 0x89da87c4
mov dword [esp + 0x14e], 0x8dda8bcb
mov dword [esp + 0x152], 0xb1e78fd8
mov dword [esp + 0x156], 0xb5c8b3e4
mov word [esp + 0x15a], 0xb7b6
mov eax, 0xb77dc2
mov ecx, 0x148823d
nop
nop
nop
nop
nop
nop
nop
movzx edi, byte [esp + eax - 0xb77d4c]
lea ebp, [ecx - 0x1488200]
mov edx, ecx
and edx, 0x100031d
mov ebx, eax
and ebx, 0xb234e2
or ebx, edx
xor ebx, edi
lea edx, [eax - 0xb77d00]
and edx, edi
not edi
or edi, ebp
xor ebx, 0x1d
or edx, ebx
and edx, edi
add dl, 0xf0
mov byte [esp + eax - 0xb77d4c], dl
inc eax
dec ecx
cmp eax, 0xb77ea8
jne 0x421ac0
lea edi, [esp + 0x9ba]
lea eax, [esp + 0x76]
mov ecx, 0x39
xchg esi, eax
rep movsd dword es:[edi], dword [esi]
xchg esi, eax
lea eax, [esp + 0x15a]
mov ecx, 1
lea edi, [esp + 0xa9e]
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov dword [esp + 0x76], 0xe149ff33
mov dword [esp + 0x7a], 0xe576e341
mov dword [esp + 0x7e], 0xe97be749
mov dword [esp + 0x82], 0xed4aeb45
mov dword [esp + 0x86], 0xd16cef7a
mov dword [esp + 0x8a], 0xd572d31d
mov dword [esp + 0x8e], 0xd971d770
mov dword [esp + 0x92], 0xdd79db79
mov dword [esp + 0x96], 0xc111df62
mov dword [esp + 0x9a], 0xc52ac311
mov dword [esp + 0x9e], 0xc974c716
mov dword [esp + 0xa2], 0xcd59cb05
mov dword [esp + 0xa6], 0xb11ccf5a
mov dword [esp + 0xaa], 0xb51bb31d
mov dword [esp + 0xae], 0xb904b71d
mov dword [esp + 0xb2], 0xbd2ebb0a
mov dword [esp + 0xb6], 0xa106bf11
mov dword [esp + 0xba], 0xa508a30b
mov dword [esp + 0xbe], 0xa93ba703
mov dword [esp + 0xc2], 0xad63ab16
mov dword [esp + 0xc6], 0x9104af3b
mov dword [esp + 0xca], 0x953b933e
mov dword [esp + 0xce], 0x99339739
mov dword [esp + 0xd2], 0x9d459b26
mov dword [esp + 0xd6], 0x81579f4d
mov dword [esp + 0xda], 0x85478357
mov dword [esp + 0xde], 0x894e8740
mov dword [esp + 0xe2], 0x8d588b5a
mov dword [esp + 0xe6], 0x71a38f5f
mov dword [esp + 0xea], 0x75a573a3
mov dword [esp + 0xee], 0x79dc77a7
mov dword [esp + 0xf2], 0x7dbe7ba9
mov dword [esp + 0xf6], 0x61b87fa6
mov dword [esp + 0xfa], 0x65b463a3
mov dword [esp + 0xfe], 0x69b967b6
mov dword [esp + 0x102], 0x6db86bba
mov dword [esp + 0x106], 0x51826fac
mov dword [esp + 0x10a], 0x55825393
mov dword [esp + 0x10e], 0x598f5780
mov dword [esp + 0x112], 0x5de05b8c
mov word [esp + 0x116], 0x5f5e
xor eax, eax
nop
mov ecx, eax
add cl, 0x8e
xor cl, byte [esp + eax + 0x76]
add cl, 0x90
mov byte [esp + eax + 0x76], cl
mov ecx, eax
and ecx, 1
xor eax, 1
lea eax, [eax + ecx*2]
cmp eax, 0xa2
jb 0x421cf0
lea edi, [esp + 0x876]
lea eax, [esp + 0x76]
mov ecx, 0x28
xchg esi, eax
rep movsd dword es:[edi], dword [esi]
xchg esi, eax
lea eax, [esp + 0x116]
lea edi, [esp + 0x916]
mov ecx, 1
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov dword [esp + 0x76], 0x5ec45c26
mov dword [esp + 0x7a], 0x52c3503c
mov dword [esp + 0x7e], 0x56c654cc
mov dword [esp + 0x82], 0x4a2f48c8
mov dword [esp + 0x86], 0x4e214cdf
mov dword [esp + 0x8a], 0x42274030
mov dword [esp + 0x8e], 0x46dc4425
mov dword [esp + 0x92], 0x7a1c7824
mov dword [esp + 0x96], 0x7e2c7c17
mov dword [esp + 0x9a], 0x722f702b
mov dword [esp + 0x9e], 0x76197423
mov dword [esp + 0xa2], 0x6afc6808
mov dword [esp + 0xa6], 0x6ef16cff
mov dword [esp + 0xaa], 0x62fe60f0
mov dword [esp + 0xae], 0x660964f8
mov dword [esp + 0xb2], 0x9a0b9817
mov dword [esp + 0xb6], 0x9efb9c04
mov dword [esp + 0xba], 0x920d9006
mov dword [esp + 0xbe], 0x960694f6
mov dword [esp + 0xc2], 0x8af688fb
mov dword [esp + 0xc6], 0x8e198c1e
mov dword [esp + 0xca], 0x821e8013
mov dword [esp + 0xce], 0x861e841c
mov dword [esp + 0xd2], 0xbaf0b8eb
mov dword [esp + 0xd6], 0xbeeabce8
mov dword [esp + 0xda], 0xb2f2b0ea
mov dword [esp + 0xde], 0xb6f3b4f5
mov dword [esp + 0xe2], 0xaafda8e7
mov dword [esp + 0xe6], 0xaefeacfa
mov dword [esp + 0xea], 0xa2f0a0fe
mov dword [esp + 0xee], 0xa6c1a4f2
mov dword [esp + 0xf2], 0xda9bd8f4
mov dword [esp + 0xf6], 0xde95dc93
mov dword [esp + 0xfa], 0xd281d09e
mov dword [esp + 0xfe], 0xd684d483
mov dword [esp + 0x102], 0xca9dc887
mov dword [esp + 0x106], 0xce9fcc89
mov dword [esp + 0x10a], 0xc297c08e
mov dword [esp + 0x10e], 0xc692c495
mov dword [esp + 0x112], 0xfa95f891
mov word [esp + 0x116], 0xfcfb
mov eax, 0x43
mov ecx, 0xbc
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ebx, byte [esp + eax + 0x33]
mov esi, ecx
or esi, ebx
not ebx
or ebx, eax
and ebx, esi
mov dl, 0xe7
sub dl, bl
mov byte [esp + eax + 0x33], dl
inc eax
dec ecx
cmp eax, 0xe5
jne 0x421f10
lea ebp, [esp + 0xb42]
lea eax, [esp + 0x76]
mov ecx, 0x28
mov edi, ebp
xchg esi, eax
rep movsd dword es:[edi], dword [esi]
xchg esi, eax
lea eax, [esp + 0x116]
lea edi, [esp + 0xbe2]
mov ecx, 1
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov dword [esp + 0x76], 0x82188032
mov dword [esp + 0x7a], 0x86178420
mov dword [esp + 0x7e], 0xfa6af818
mov dword [esp + 0x82], 0xfe5bfc64
mov dword [esp + 0x86], 0xf25df06b
mov dword [esp + 0x8a], 0xf653f44c
mov dword [esp + 0x8e], 0xea70e851
mov dword [esp + 0x92], 0xee48ec48
mov dword [esp + 0x96], 0xe2b0e043
mov dword [esp + 0x9a], 0xe6bbe4b6
mov dword [esp + 0x9e], 0xda75d8b7
mov dword [esp + 0xa2], 0xde48dc64
mov dword [esp + 0xa6], 0xd24dd04b
mov dword [esp + 0xaa], 0xd64ad44c
mov dword [esp + 0xae], 0xca65c84c
mov dword [esp + 0xb2], 0xce5fcc7b
mov dword [esp + 0xb6], 0xc267c050
mov dword [esp + 0xba], 0xc659c45a
mov dword [esp + 0xbe], 0x3aaa3862
mov dword [esp + 0xc2], 0x3e823c97
mov dword [esp + 0xc6], 0x32a530aa
mov dword [esp + 0xca], 0x36aa34af
mov dword [esp + 0xce], 0x2ab228a8
mov dword [esp + 0xd2], 0x2e642c87
mov dword [esp + 0xd6], 0x2276207c
mov dword [esp + 0xda], 0x26662476
mov dword [esp + 0xde], 0x1a5f1861
mov dword [esp + 0xe2], 0x1e491c4b
mov dword [esp + 0xe6], 0x1242104e
mov dword [esp + 0xea], 0x16441442
mov dword [esp + 0xee], 0xaad0846
mov dword [esp + 0xf2], 0xe4f0c58
mov dword [esp + 0xf6], 0x2490047
mov dword [esp + 0xfa], 0x6550442
mov dword [esp + 0xfe], 0x7a287857
mov dword [esp + 0x102], 0x7e297c2b
mov dword [esp + 0x106], 0x7223703d
mov dword [esp + 0x10a], 0x76237432
mov dword [esp + 0x10e], 0x6a3e6821
mov dword [esp + 0x112], 0x6ec16c3d
mov word [esp + 0x116], 0x606f
xor ecx, ecx
mov eax, 0xffffffff
nop
nop
mov edx, eax
or edx, 0x37
add edx, ecx
mov esi, ecx
xor esi, 0x37
lea ebx, [esi + edx*2]
add bl, 2
xor bl, byte [esp + ecx + 0x76]
add bl, 0x48
mov byte [esp + ecx + 0x76], bl
lea edx, [ecx + 1]
dec eax
mov ecx, edx
cmp edx, 0xa2
jne 0x422120
lea eax, [esp + 0xaa0]
lea edx, [esp + 0x76]
mov edi, eax
mov ecx, 0x28
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
lea edx, [esp + 0x116]
lea edi, [esp + 0xb40]
mov ecx, 1
xchg esi, edx
rep movsw word es:[edi], word [esi]
xchg esi, edx
lea ecx, [esp + 0x918]
mov dword [esp + 0x50], ecx
lea ecx, [esp + 0x9ba]
mov dword [esp + 0x54], ecx
lea ecx, [esp + 0x876]
mov dword [esp + 0x58], ecx
mov dword [esp + 0x5c], ebp
mov dword [esp + 0x60], eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov dword [esp + 0x76], 0x77df7539
mov dword [esp + 0x7a], 0x7bc879db
mov dword [esp + 0x7e], 0x7fcd7dd3
mov dword [esp + 0x82], 0x43e441ef
mov dword [esp + 0x86], 0x471a45f0
mov dword [esp + 0x8a], 0x4be3491f
mov dword [esp + 0x8e], 0x4fea4de2
mov dword [esp + 0x92], 0x53e551ff
mov dword [esp + 0x96], 0x573655e7
mov dword [esp + 0x9a], 0x5bff5915
mov dword [esp + 0x9e], 0x5fed5def
mov dword [esp + 0xa2], 0xa305a101
mov dword [esp + 0xa6], 0xa708a50d
mov dword [esp + 0xaa], 0xabcaa90f
mov dword [esp + 0xae], 0xaf1badff
mov dword [esp + 0xb2], 0xb301b112
mov dword [esp + 0xb6], 0xb705b50d
mov dword [esp + 0xba], 0xbb1fb90c
mov dword [esp + 0xbe], 0xbfe2bd11
mov dword [esp + 0xc2], 0x833081d0
mov dword [esp + 0xc6], 0x8720852b
mov dword [esp + 0xca], 0x8b268921
mov dword [esp + 0xce], 0x8f3d8d29
mov dword [esp + 0xd2], 0x93eb91cc
mov dword [esp + 0xd6], 0x97e195e7
mov dword [esp + 0xda], 0x9bd999ed
mov dword [esp + 0xde], 0x9fd89dda
mov dword [esp + 0xe2], 0xe396e190
mov dword [esp + 0xe6], 0xe795e595
mov dword [esp + 0xea], 0xeb9be999
mov dword [esp + 0xee], 0xef4aed9d
mov dword [esp + 0xf2], 0xf3b0f183
mov dword [esp + 0xf6], 0xf78ef58c
mov dword [esp + 0xfa], 0xfb8af9b9
mov dword [esp + 0xfe], 0xff8ffd8c
mov dword [esp + 0x102], 0xc3b6c1b0
mov dword [esp + 0x106], 0xc7b4c586
mov dword [esp + 0x10a], 0xcbbcc989
mov dword [esp + 0x10e], 0xcfb9cdba
mov dword [esp + 0x112], 0xd38ed1a6
mov word [esp + 0x116], 0xd5d4
xor eax, eax
nop
nop
nop
nop
nop
movzx edx, byte [esp + eax + 0x76]
mov esi, eax
and esi, 0x2c
xor esi, 0x2ac7832c
mov ecx, eax
and ecx, 0xd3
sub ecx, esi
mov edi, ecx
and edi, edx
mov esi, edi
and esi, 2
mov ebx, edi
or ebx, 0xfd
inc ebx
mov ebp, edi
and ebp, 0xfffffffd
imul ebp, ebx
or edi, 2
imul edi, esi
sub ebp, edi
add ecx, edx
add ecx, ebp
add cl, 0x60
mov byte [esp + eax + 0x76], cl
inc eax
cmp eax, 0xa2
jne 0x422370
lea edi, [esp + 0x918]
lea eax, [esp + 0x76]
mov ecx, 0x28
xchg esi, eax
rep movsd dword es:[edi], dword [esi]
xchg esi, eax
lea eax, [esp + 0x116]
lea edi, [esp + 0x9b8]
mov ecx, 1
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov dword [esp + 0x76], 0xd5bdd39f
mov dword [esp + 0x7a], 0xd94ad7b5
mov dword [esp + 0x7e], 0xdd4fdbb5
mov dword [esp + 0x82], 0xc1a6dfb1
mov dword [esp + 0x86], 0xc5b8c356
mov dword [esp + 0x8a], 0xc9a1c7b1
mov dword [esp + 0x8e], 0xcda8cba4
mov dword [esp + 0x92], 0xf167cfa1
mov dword [esp + 0x96], 0xf5d4f361
mov dword [esp + 0x9a], 0xf98cf7b8
mov dword [esp + 0x9e], 0xfdbffb86
mov dword [esp + 0xa2], 0xe172ff6b
mov dword [esp + 0xa6], 0xe581e370
mov dword [esp + 0xaa], 0xe97ce788
mov dword [esp + 0xae], 0xed89eb9c
mov dword [esp + 0xb2], 0x1183ef7c
mov dword [esp + 0xb6], 0x157b137b
mov dword [esp + 0xba], 0x19641778
mov dword [esp + 0xbe], 0x1d751b6d
mov dword [esp + 0xc2], 0x1641f70
mov dword [esp + 0xc6], 0x593036d
mov dword [esp + 0xca], 0x9280795
mov dword [esp + 0xce], 0xd690b47
mov dword [esp + 0xd2], 0x31a30f9d
mov dword [esp + 0xd6], 0x35533353
mov dword [esp + 0xda], 0x3956375f
mov dword [esp + 0xde], 0x3d1c3b5d
mov dword [esp + 0xe2], 0x21b53f4d
mov dword [esp + 0xe6], 0x25b72340
mov dword [esp + 0xea], 0x29bb27bf
mov dword [esp + 0xee], 0x2d492bbe
mov dword [esp + 0xf2], 0x512c2f43
mov dword [esp + 0xf6], 0x55c65322
mov dword [esp + 0xfa], 0x593e5739
mov dword [esp + 0xfe], 0x5d305b33
mov dword [esp + 0x102], 0x41d35f3b
mov dword [esp + 0x106], 0x450b433e
mov dword [esp + 0x10a], 0x49dc47d3
mov dword [esp + 0x10e], 0x4d234b26
mov dword [esp + 0x112], 0x711b4f21
mov dword [esp + 0x116], 0x752d730e
mov dword [esp + 0x11a], 0x792f7725
mov dword [esp + 0x11e], 0x7d3f7b2f
mov dword [esp + 0x122], 0x61267f38
mov dword [esp + 0x126], 0x65306332
mov dword [esp + 0x12a], 0x693b6737
mov dword [esp + 0x12e], 0x6d3d6b3b
mov dword [esp + 0x132], 0x91f46f3f
mov dword [esp + 0x136], 0x95d693c1
mov dword [esp + 0x13a], 0x99c097ce
mov dword [esp + 0x13e], 0x9dcc9bdb
mov dword [esp + 0x142], 0x81d19fce
mov dword [esp + 0x146], 0x85d083d2
mov dword [esp + 0x14a], 0x89da87c4
mov dword [esp + 0x14e], 0x8dda8bcb
mov dword [esp + 0x152], 0xb1e78fd8
mov dword [esp + 0x156], 0xb5c8b3e4
mov word [esp + 0x15a], 0xb7b6
mov eax, 0xb77dc2
mov ecx, 0x148823d
nop
nop
nop
nop
nop
nop
nop
movzx edi, byte [esp + eax - 0xb77d4c]
lea ebp, [ecx - 0x1488200]
mov edx, ecx
and edx, 0x100031d
mov ebx, eax
and ebx, 0xb234e2
or ebx, edx
xor ebx, edi
lea edx, [eax - 0xb77d00]
and edx, edi
not edi
or edi, ebp
xor ebx, 0x1d
or edx, ebx
and edx, edi
add dl, 0xf0
mov byte [esp + eax - 0xb77d4c], dl
inc eax
dec ecx
cmp eax, 0xb77ea8
jne 0x422670
lea edi, [esp + 0x9ba]
lea eax, [esp + 0x76]
mov ecx, 0x39
xchg esi, eax
rep movsd dword es:[edi], dword [esi]
xchg esi, eax
lea eax, [esp + 0x15a]
lea edi, [esp + 0xa9e]
mov ecx, 1
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov dword [esp + 0x76], 0xe149ff33
mov dword [esp + 0x7a], 0xe576e341
mov dword [esp + 0x7e], 0xe97be749
mov dword [esp + 0x82], 0xed4aeb45
mov dword [esp + 0x86], 0xd16cef7a
mov dword [esp + 0x8a], 0xd572d31d
mov dword [esp + 0x8e], 0xd971d770
mov dword [esp + 0x92], 0xdd79db79
mov dword [esp + 0x96], 0xc111df62
mov dword [esp + 0x9a], 0xc52ac311
mov dword [esp + 0x9e], 0xc974c716
mov dword [esp + 0xa2], 0xcd59cb05
mov dword [esp + 0xa6], 0xb11ccf5a
mov dword [esp + 0xaa], 0xb51bb31d
mov dword [esp + 0xae], 0xb904b71d
mov dword [esp + 0xb2], 0xbd2ebb0a
mov dword [esp + 0xb6], 0xa106bf11
mov dword [esp + 0xba], 0xa508a30b
mov dword [esp + 0xbe], 0xa93ba703
mov dword [esp + 0xc2], 0xad63ab16
mov dword [esp + 0xc6], 0x9104af3b
mov dword [esp + 0xca], 0x953b933e
mov dword [esp + 0xce], 0x99339739
mov dword [esp + 0xd2], 0x9d459b26
mov dword [esp + 0xd6], 0x81579f4d
mov dword [esp + 0xda], 0x85478357
mov dword [esp + 0xde], 0x894e8740
mov dword [esp + 0xe2], 0x8d588b5a
mov dword [esp + 0xe6], 0x71a38f5f
mov dword [esp + 0xea], 0x75a573a3
mov dword [esp + 0xee], 0x79dc77a7
mov dword [esp + 0xf2], 0x7dbe7ba9
mov dword [esp + 0xf6], 0x61b87fa6
mov dword [esp + 0xfa], 0x65b463a3
mov dword [esp + 0xfe], 0x69b967b6
mov dword [esp + 0x102], 0x6db86bba
mov dword [esp + 0x106], 0x51826fac
mov dword [esp + 0x10a], 0x55825393
mov dword [esp + 0x10e], 0x598f5780
mov dword [esp + 0x112], 0x5de05b8c
mov word [esp + 0x116], 0x5f5e
xor eax, eax
nop
mov ecx, eax
add cl, 0x8e
xor cl, byte [esp + eax + 0x76]
add cl, 0x90
mov byte [esp + eax + 0x76], cl
mov ecx, eax
and ecx, 1
xor eax, 1
lea eax, [eax + ecx*2]
cmp eax, 0xa2
jb 0x4228a0
lea edi, [esp + 0x876]
lea eax, [esp + 0x76]
mov ecx, 0x28
xchg esi, eax
rep movsd dword es:[edi], dword [esi]
xchg esi, eax
lea eax, [esp + 0x116]
lea edi, [esp + 0x916]
mov ecx, 1
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov dword [esp + 0x76], 0x5ec45c26
mov dword [esp + 0x7a], 0x52c3503c
mov dword [esp + 0x7e], 0x56c654cc
mov dword [esp + 0x82], 0x4a2f48c8
mov dword [esp + 0x86], 0x4e214cdf
mov dword [esp + 0x8a], 0x42274030
mov dword [esp + 0x8e], 0x46dc4425
mov dword [esp + 0x92], 0x7a1c7824
mov dword [esp + 0x96], 0x7e2c7c17
mov dword [esp + 0x9a], 0x722f702b
mov dword [esp + 0x9e], 0x76197423
mov dword [esp + 0xa2], 0x6afc6808
mov dword [esp + 0xa6], 0x6ef16cff
mov dword [esp + 0xaa], 0x62fe60f0
mov dword [esp + 0xae], 0x660964f8
mov dword [esp + 0xb2], 0x9a0b9817
mov dword [esp + 0xb6], 0x9efb9c04
mov dword [esp + 0xba], 0x920d9006
mov dword [esp + 0xbe], 0x960694f6
mov dword [esp + 0xc2], 0x8af688fb
mov dword [esp + 0xc6], 0x8e198c1e
mov dword [esp + 0xca], 0x821e8013
mov dword [esp + 0xce], 0x861e841c
mov dword [esp + 0xd2], 0xbaf0b8eb
mov dword [esp + 0xd6], 0xbeeabce8
mov dword [esp + 0xda], 0xb2f2b0ea
mov dword [esp + 0xde], 0xb6f3b4f5
mov dword [esp + 0xe2], 0xaafda8e7
mov dword [esp + 0xe6], 0xaefeacfa
mov dword [esp + 0xea], 0xa2f0a0fe
mov dword [esp + 0xee], 0xa6c1a4f2
mov dword [esp + 0xf2], 0xda9bd8f4
mov dword [esp + 0xf6], 0xde95dc93
mov dword [esp + 0xfa], 0xd281d09e
mov dword [esp + 0xfe], 0xd684d483
mov dword [esp + 0x102], 0xca9dc887
mov dword [esp + 0x106], 0xce9fcc89
mov dword [esp + 0x10a], 0xc297c08e
mov dword [esp + 0x10e], 0xc692c495
mov dword [esp + 0x112], 0xfa95f891
mov word [esp + 0x116], 0xfcfb
mov eax, 0x43
mov ecx, 0xbc
mov ebp, dword [esp + 0x3c]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edx, byte [esp + eax + 0x33]
mov esi, ecx
or esi, edx
not edx
or edx, eax
and edx, esi
mov bl, 0xe7
sub bl, dl
mov byte [esp + eax + 0x33], bl
inc eax
dec ecx
cmp eax, 0xe5
jne 0x422ac0
lea edx, [esp + 0xb42]
lea eax, [esp + 0x76]
mov ecx, 0x28
mov edi, edx
xchg esi, eax
rep movsd dword es:[edi], dword [esi]
xchg esi, eax
lea eax, [esp + 0x116]
lea edi, [esp + 0xbe2]
mov ecx, 1
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov dword [esp + 0x76], 0x82188032
mov dword [esp + 0x7a], 0x86178420
mov dword [esp + 0x7e], 0xfa6af818
mov dword [esp + 0x82], 0xfe5bfc64
mov dword [esp + 0x86], 0xf25df06b
mov dword [esp + 0x8a], 0xf653f44c
mov dword [esp + 0x8e], 0xea70e851
mov dword [esp + 0x92], 0xee48ec48
mov dword [esp + 0x96], 0xe2b0e043
mov dword [esp + 0x9a], 0xe6bbe4b6
mov dword [esp + 0x9e], 0xda75d8b7
mov dword [esp + 0xa2], 0xde48dc64
mov dword [esp + 0xa6], 0xd24dd04b
mov dword [esp + 0xaa], 0xd64ad44c
mov dword [esp + 0xae], 0xca65c84c
mov dword [esp + 0xb2], 0xce5fcc7b
mov dword [esp + 0xb6], 0xc267c050
mov dword [esp + 0xba], 0xc659c45a
mov dword [esp + 0xbe], 0x3aaa3862
mov dword [esp + 0xc2], 0x3e823c97
mov dword [esp + 0xc6], 0x32a530aa
mov dword [esp + 0xca], 0x36aa34af
mov dword [esp + 0xce], 0x2ab228a8
mov dword [esp + 0xd2], 0x2e642c87
mov dword [esp + 0xd6], 0x2276207c
mov dword [esp + 0xda], 0x26662476
mov dword [esp + 0xde], 0x1a5f1861
mov dword [esp + 0xe2], 0x1e491c4b
mov dword [esp + 0xe6], 0x1242104e
mov dword [esp + 0xea], 0x16441442
mov dword [esp + 0xee], 0xaad0846
mov dword [esp + 0xf2], 0xe4f0c58
mov dword [esp + 0xf6], 0x2490047
mov dword [esp + 0xfa], 0x6550442
mov dword [esp + 0xfe], 0x7a287857
mov dword [esp + 0x102], 0x7e297c2b
mov dword [esp + 0x106], 0x7223703d
mov dword [esp + 0x10a], 0x76237432
mov dword [esp + 0x10e], 0x6a3e6821
mov dword [esp + 0x112], 0x6ec16c3d
mov word [esp + 0x116], 0x606f
xor ecx, ecx
mov eax, 0xffffffff
nop
nop
mov esi, eax
or esi, 0x37
add esi, ecx
mov edi, ecx
xor edi, 0x37
lea ebx, [edi + esi*2]
add bl, 2
xor bl, byte [esp + ecx + 0x76]
add bl, 0x48
mov byte [esp + ecx + 0x76], bl
lea esi, [ecx + 1]
dec eax
mov ecx, esi
cmp esi, 0xa2
jne 0x422cd0
lea eax, [esp + 0xaa0]
lea ebx, [esp + 0x76]
mov esi, ebx
mov edi, eax
mov ecx, 0x28
xchg esi, esi
rep movsd dword es:[edi], dword [esi]
xchg esi, esi
lea esi, [esp + 0x116]
lea edi, [esp + 0xb40]
mov ecx, 1
xchg esi, esi
rep movsw word es:[edi], word [esi]
xchg esi, esi
lea ecx, [esp + 0x918]
mov dword [esp + 0x50], ecx
lea ecx, [esp + 0x9ba]
mov dword [esp + 0x54], ecx
lea ecx, [esp + 0x876]
mov dword [esp + 0x58], ecx
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
jmp dword [0x44150c]
xor ecx, ecx
xor eax, eax
mov dword [esp + 0x10], 0
cmp ecx, 0x14
setne al
jmp dword [eax*4 + 0x441510]
jmp dword [0x44151c]
mov edx, dword [esp + 0x10]
add edx, 4
xor eax, eax
mov ecx, edx
mov dword [esp + 0x10], edx
cmp edx, 0x14
setne al
jmp dword [eax*4 + 0x441510]
jmp dword [0x44152c]
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + eax + 0x50]
mov dword [esp + 0x76], 0xb3a0938
mov dword [esp + 0x7a], 0xf3e0d3c
mov dword [esp + 0x7e], 0x13221120
mov dword [esp + 0x82], 0x17ce1524
mov word [esp + 0x86], 0x1918
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
mov edx, eax
add dl, 0x48
xor dl, byte [esp + eax + 0x76]
add dl, 0xc0
mov byte [esp + eax + 0x76], dl
inc eax
cmp eax, 0x12
jne 0x422df0
movzx edx, word [ecx]
test dx, dx
je 0x422e33
add ecx, 2
lea eax, [esp + 0xbe4]
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], dx
add eax, 2
movzx edx, word [ecx]
add ecx, 2
test dx, dx
jne 0x422e20
jmp 0x422e3a
lea eax, [esp + 0xbe4]
mov word [eax], 0
movzx ecx, word [esp + 0x76]
test cx, cx
je 0x422e61
lea edx, [esp + 0x78]
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x422e50
mov word [eax], 0
jmp case.0x4212dd.32
mov word [edx], 0
jmp dword [0x441530]
mov eax, dword [esp + 0x10]
mov eax, dword [esp + eax + 0x50]
mov dword [esp + 0x76], 0xb3a0938
mov dword [esp + 0x7a], 0xf3e0d3c
mov dword [esp + 0x7e], 0x13221120
mov dword [esp + 0x82], 0x17ce1524
mov word [esp + 0x86], 0x1918
xor ecx, ecx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edx, ecx
add dl, 0x48
xor dl, byte [esp + ecx + 0x76]
add dl, 0xc0
mov byte [esp + ecx + 0x76], dl
inc ecx
cmp ecx, 0x12
jne 0x422ec0
movzx ecx, word [eax]
test cx, cx
je 0x422f10
add eax, 2
lea edx, [esp + 0xbe4]
nop
nop
nop
nop
nop
nop
nop
nop
mov word [edx], cx
add edx, 2
movzx ecx, word [eax]
add eax, 2
test cx, cx
jne 0x422ef0
jmp 0x422f17
lea edx, [esp + 0xbe4]
mov word [edx], 0
movzx eax, word [esp + 0x76]
test ax, ax
je 0x422e70
lea ecx, [esp + 0x78]
nop
nop
mov word [edx], ax
add edx, 2
movzx eax, word [ecx]
add ecx, 2
test ax, ax
jne 0x422f30
jmp 0x422e70
mov cx, 0x31
xor eax, eax
cmp cx, 0x35
setb al
jmp dword [eax*4 + 0x441538]
inc esi
xor eax, eax
cmp si, 0x35
setb al
mov edx, dword [esp + 0x28]
mov ecx, esi
jmp dword [eax*4 + 0x441538]
mov dword [esp + 0x28], edx
mov word [edx - 2], cx
lea eax, [esp + 0x4c]
mov esi, ecx
lea ecx, [esp + 0xbe4]
push dword [esp + 0x30]
push 0
push 0x20019
push eax
push ecx
call fcn.0043a920
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x441540]
mov dword [esp + 0x40], esi
mov dword [esp + 0x68], 0x800
mov dword [esp + 0x2c], 0x400
xor esi, esi
mov dword [esp + 0x48], 0
jmp 0x422fe1
inc esi
lea eax, [esp + 0x2c]
lea ebp, [esp + 0xde4]
lea ecx, [esp + 0x64]
lea edx, [esp + 0x68]
push eax
push ebp
push ecx
push edx
push ebx
push esi
push dword [esp + 0x64]
call fcn.0043ae60
add esp, 0x1c
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x441548]
test byte [esp + 0x48], 1
sete al
mov edi, dword [esp + 0x64]
cmp edi, 1
sete cl
and cl, al
movzx eax, cl
jmp dword [eax*4 + 0x441550]
xor eax, eax
cmp edi, 3
sete al
jmp dword [eax*4 + 0x441570]
mov dword [esp], esi
mov dword [esp + 0x16], 0x872585c5
mov dword [esp + 0x1a], 0x8b25892b
mov dword [esp + 0x1e], 0x8f208d39
mov dword [esp + 0x22], 0x93929124
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ecx, byte [esp + eax + 0x16]
mov edx, 0x5b
sub edx, eax
or edx, ecx
lea esi, [eax + 0xa4]
or esi, ecx
add edx, eax
mov ecx, 0x5a
sub ecx, edx
and ecx, esi
add cl, 0xe0
mov byte [esp + eax + 0x16], cl
add eax, 0xd7df7bec
mov ecx, eax
and ecx, 0x15
xor eax, 0x28208415
lea eax, [eax + ecx*2]
cmp eax, 0x10
jb 0x423070
movzx eax, word [esp + 0x16]
mov dword [esp + 0xc], ebx
test ax, ax
je 0x42310e
lea ecx, [esp + 0x76]
lea ebx, [esp + 0x16]
mov dword [esp + 0xc], ecx
jmp 0x4230d8
movzx eax, word [ebx]
test ax, ax
je 0x42310e
mov esi, edi
movzx edi, word [ecx]
test di, di
je 0x423104
add ecx, 2
add ebx, 2
mov edx, dword [esp + 0xc]
add edx, 2
cmp di, ax
je 0x4230fa
mov dword [esp + 0xc], edx
mov ecx, edx
mov edi, esi
je 0x4230d0
lea ebx, [esp + 0x16]
jmp 0x4230d0
mov dword [esp + 0xc], 0
mov edi, esi
xor eax, eax
cmp dword [esp + 0xc], 0
setne al
jmp dword [eax*4 + 0x441558]
xor eax, eax
cmp edi, 3
sete al
lea ebx, [esp + 0x76]
mov esi, dword [esp]
jmp dword [eax*4 + 0x441570]
mov dword [esp], esi
mov dword [esp + 0x16], 0x9230902f
mov dword [esp + 0x1a], 0x96069400
mov dword [esp + 0x1e], 0x8a168800
mov dword [esp + 0x22], 0x8e298c19
mov word [esp + 0x26], 0x808f
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edx, byte [esp + eax + 0x16]
lea ecx, [eax + eax]
mov esi, ecx
and esi, 0xe
mov edi, eax
xor edi, 0xb069dba7
add edi, esi
xor edi, edx
mov edx, edi
and edx, 0x47
xor edi, 0xc7
lea edx, [edi + edx*2]
inc dl
mov byte [esp + eax + 0x16], dl
and ecx, 2
xor eax, 1
add eax, ecx
cmp eax, 0x12
jb 0x423170
movzx ebx, word [esp + 0x16]
test bx, bx
je 0x423263
lea ecx, [esp + 0x76]
lea edx, [esp + 0x16]
mov eax, ecx
mov esi, dword [esp]
jmp 0x4231dc
movzx ebx, word [edx]
test bx, bx
je 0x42326e
movzx ebp, word [ecx]
test bp, bp
je 0x42326c
add ecx, 2
add edx, 2
lea esi, [eax + 2]
cmp bp, bx
je 0x4231fa
mov eax, esi
mov ecx, esi
mov esi, dword [esp]
je 0x4231d0
lea edx, [esp + 0x16]
jmp 0x4231d0
mov ecx, dword [esp + 0x2c]
cmp ecx, 2
mov esi, dword [esp + 4]
jb 0x42334a
shr ecx, 1
mov eax, ecx
and eax, 3
je 0x4232de
mov edi, esi
xor edx, edx
lea ebp, [esp + 0xde4]
nop
nop
nop
nop
nop
nop
nop
movzx esi, word [ebp]
xor ebx, ebx
test si, si
setne bl
lea ebp, [ebp + ebx*2]
mov word [edi], si
add edi, 2
inc edx
cmp eax, edx
jne 0x423240
mov eax, ecx
sub eax, edx
mov esi, edi
jmp 0x4232e0
lea eax, [esp + 0x76]
mov esi, dword [esp]
jmp 0x42326e
xor eax, eax
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x441578]
mov edi, dword [esp + 0x2c]
cmp edi, 2
lea ebx, [esp + 0x76]
jae 0x423292
mov edx, dword [esp + 4]
jmp 0x4233db
shr edi, 1
mov ecx, edi
and ecx, 3
mov edx, dword [esp + 4]
je 0x42336a
xor ebx, ebx
lea eax, [esp + 0xde4]
nop
nop
nop
nop
movzx esi, word [eax]
mov ebp, edx
xor edx, edx
test si, si
setne dl
lea eax, [eax + edx*2]
mov edx, ebp
mov word [ebp], si
add edx, 2
inc ebx
cmp ecx, ebx
jne 0x4232b0
mov ecx, edi
sub ecx, ebx
lea ebx, [esp + 0x76]
mov esi, dword [esp]
jmp 0x423373
mov eax, ecx
dec ecx
cmp ecx, 3
jb 0x42334a
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ecx, word [ebp]
xor edx, edx
test cx, cx
setne dl
lea edi, [edx*2]
add edi, ebp
mov word [esi], cx
movzx ecx, word [ebp + edx*2]
xor edx, edx
test cx, cx
setne dl
lea ebx, [edi + edx*2]
mov word [esi + 2], cx
movzx ecx, word [edi + edx*2]
xor edx, edx
test cx, cx
setne dl
lea edi, [ebx + edx*2]
mov word [esi + 4], cx
movzx edx, word [ebx + edx*2]
xor ecx, ecx
test dx, dx
setne cl
mov word [esi + 6], dx
add esi, 8
lea ebp, [edi + ecx*2]
add eax, 0xfffffffc
jne 0x4232f0
mov dword [esi], 0x20003a
add esi, 4
mov dword [esp + 4], esi
mov al, 1
mov dword [esp + 0x48], eax
mov esi, dword [esp]
inc esi
lea ebx, [esp + 0x76]
jmp 0x422fe1
lea eax, [esp + 0xde4]
mov ecx, edi
dec edi
cmp edi, 3
jb 0x4233db
nop
nop
nop
nop
nop
nop
nop
mov esi, edx
movzx edx, word [eax]
xor ebx, ebx
test dx, dx
setne bl
lea edi, [eax + ebx*2]
mov word [esi], dx
movzx eax, word [eax + ebx*2]
xor edx, edx
test ax, ax
setne dl
lea ebx, [edi + edx*2]
mov word [esi + 2], ax
movzx eax, word [edi + edx*2]
xor edx, edx
test ax, ax
setne dl
lea edi, [ebx + edx*2]
mov word [esi + 4], ax
movzx edx, word [ebx + edx*2]
xor eax, eax
test dx, dx
setne al
mov word [esi + 6], dx
lea edx, [esi + 8]
lea eax, [edi + eax*2]
add ecx, 0xfffffffc
jne 0x423380
lea ebx, [esp + 0x76]
mov esi, dword [esp]
mov word [edx], 0xa
add edx, 2
mov dword [esp + 4], edx
mov al, 1
mov dword [esp + 0x44], eax
inc esi
jmp 0x422fe1
mov edi, ebx
mov ecx, dword [0x446b30]
test ecx, ecx
mov ebp, dword [esp + 0x3c]
je case.default.0x423469
mov eax, dword [esp + 0x4c]
xor edx, edx
mov ebx, dword [0x446b34]
nop
nop
nop
nop
cmp dword [ebx + edx*8], 0xb430e561
je 0x42343a
mov esi, edx
xor esi, 1
and edx, 1
lea edx, [esi + edx*2]
cmp edx, ecx
jb 0x423420
jmp case.default.0x423469
mov ecx, dword [ebx + edx*8 + 4]
cmp ecx, 0xffffffff
je case.default.0x423469
push eax
push 4
push ecx
push dword [0x446b38]
call fcn.004383c0
add esp, 0x10
mov ecx, dword [esp + 0x40]
inc ecx
xor eax, eax
cmp cx, 0x35
setb al
mov ebx, edi
mov edx, dword [esp + 0x28]
jmp dword [eax*4 + 0x441538]
mov ecx, dword [esp + 0x40]
inc ecx
xor eax, eax
cmp cx, 0x35
setb al
mov ebx, edi
mov edx, dword [esp + 0x28]
jmp dword [eax*4 + 0x441538]
push ebp
call fcn.004082b0
add esp, 4
mov ecx, dword [esp + 8]
inc ecx
xor eax, eax
mov dword [esp + 8], ecx
cmp ecx, dword [esp + 0x34]
setb al
jmp dword [eax*4 + 0x4414e0]
cmp dword [edi + edx*8], 0xb430e561
je 0x4234da
mov esi, edx
xor esi, 1
and edx, 1
lea edx, [esi + edx*2]
cmp edx, ecx
jb 0x4234c0
jmp case.0x4212dd.28
mov ecx, dword [edi + edx*8 + 4]
cmp ecx, 0xffffffff
je case.0x4212dd.28
push eax
push 4
push ecx
push dword [0x446b38]
call fcn.004383c0
add esp, 0x10
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [0x446b30]
test ecx, ecx
je 0x423570
mov eax, dword [esp + 0x30]
xor edx, edx
mov edi, dword [0x446b34]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [edi + edx*8], 0xb430e561
je 0x42353a
mov esi, edx
xor esi, 1
and edx, 1
lea edx, [esi + edx*2]
cmp edx, ecx
jb 0x423520
jmp 0x423570
mov ecx, dword [edi + edx*8 + 4]
cmp ecx, 0xffffffff
je 0x423570
push eax
push 4
push ecx
push dword [0x446b38]
call fcn.004383c0
add esp, 0x10
jmp dword [0x441524]
jmp dword [0x441580]
jmp dword [0x441524]
mov ecx, dword [0x446b30]
test ecx, ecx
je case.0x4212dd.28
mov eax, dword [esp + 0x30]
xor edx, edx
mov edi, dword [0x446b34]
jmp 0x4234c0
inc edi
movzx ecx, word [eax]
add eax, 2
test cx, cx
je 0x4235db
cmp cx, 0x7f
jbe 0x4235a0
movzx edx, cx
cmp edx, 0x7ff
ja 0x4235d0
mov ecx, edi
xor ecx, 2
and edi, 2
lea edi, [ecx + edi*2]
jmp 0x4235a1
cmp cx, 0xffff
je 0x4235a1
add edi, 3
jmp 0x4235a1
lea ebx, [edi + 1]
push ebx
call fcn.004082a0
add esp, 4
mov esi, eax
lea eax, [esp + 0x11e4]
push eax
push ebx
push esi
call fcn.00409100
add esp, 0xc
mov dword [esp + 0x76], 0xd4272654
mov dword [esp + 0x7a], 0xd8cac9d0
mov dword [esp + 0x7e], 0xd3d1d1d4
mov dword [esp + 0x82], 0xd0d6bd9e
mov dword [esp + 0x86], 0xc3d8d9d9
mov dword [esp + 0x8a], 0xc3c9aa86
mov dword [esp + 0x8e], 0xd5c3c7db
mov dword [esp + 0x92], 0xfcc78cc2
mov word [esp + 0x96], 0x76c1
mov eax, 0x7d
mov ecx, 0x82
nop
nop
movzx ebx, byte [esp + eax - 7]
mov edx, eax
xor edx, ecx
and edx, ebx
xor edx, ecx
mov bl, 0x17
sub bl, dl
mov byte [esp + eax - 7], bl
inc eax
dec ecx
cmp eax, 0x9f
jne 0x423660
lea eax, [esp + 0x76]
mov ecx, dword [esp + 0x21f8]
push edi
push esi
push eax
call fcn.00409280
jmp dword [0x441588]
push esi
mov esi, eax
call fcn.004082b0
mov eax, esi
add esp, 4
and al, 1
add esp, 0x21e4
pop esi
pop edi
pop ebx
pop ebp
ret
xor ebx, ebx
test ecx, ecx
sete bl
xor edx, edx
jmp dword [ebx*4 + 0x441bac]
jmp dword [edx*4 + 0x441b2c]
mov dword [esp + 0x40], 0x12a310b3
mov dword [esp + 0x44], 0x16521456
mov dword [esp + 0x48], 0xaba08ae
mov dword [esp + 0x4c], 0xebf0cbf
mov dword [esp + 0x50], 0x2ad00a6
mov dword [esp + 0x54], 0x64404be
mov dword [esp + 0x58], 0x7ac17844
mov dword [esp + 0x5c], 0x7ec37cc2
mov dword [esp + 0x60], 0x72dd703a
mov dword [esp + 0x64], 0x76ca74c0
mov dword [esp + 0x68], 0x6add6831
mov dword [esp + 0x6c], 0x6e2c6cdc
mov dword [esp + 0x70], 0x622460dd
mov dword [esp + 0x74], 0x66d864cf
mov dword [esp + 0x78], 0x5afa58fe
mov dword [esp + 0x7c], 0x5ec25cc9
mov dword [esp + 0x80], 0x52ce50cc
mov dword [esp + 0x84], 0x56c154f5
mov dword [esp + 0x88], 0x4afe48fb
mov dword [esp + 0x8c], 0x4ed34cd2
mov dword [esp + 0x90], 0x42de40eb
mov dword [esp + 0x94], 0x46d644d4
mov dword [esp + 0x98], 0xbafab8eb
mov dword [esp + 0x9c], 0xbe2fbc2e
mov dword [esp + 0xa0], 0xb214b02d
mov dword [esp + 0xa4], 0xb621b42d
mov dword [esp + 0xa8], 0xaa0ca801
mov dword [esp + 0xac], 0xae3eac39
mov dword [esp + 0xb0], 0xa23ea036
mov dword [esp + 0xb4], 0xa609a43d
mov dword [esp + 0xb8], 0x9a079812
mov dword [esp + 0xbc], 0x9e039c02
mov dword [esp + 0xc0], 0x9205900c
mov dword [esp + 0xc4], 0x96099432
mov dword [esp + 0xc8], 0x8a89880b
xor ecx, ecx
nop
nop
nop
nop
nop
nop
mov edx, ecx
add dl, 0x27
xor dl, byte [esp + ecx + 0x40]
add dl, 0xc8
mov byte [esp + ecx + 0x40], dl
inc ecx
cmp ecx, 0x8c
jne case.default.0x423c73
lea ecx, [esp + 0xc]
lea edx, [esp + 0x40]
push 0
push 0
push eax
push ecx
push edx
call fcn.0043a920
add esp, 0x14
shr eax, 0x1f
jmp dword [eax*4 + 0x441b34]
lea eax, [esp + 0x24]
lea ecx, [esp + 8]
push 0
push 0
push 0
push 0
push eax
push ecx
push 0
push 0
push dword [esp + 0x2c]
call fcn.0043ac00
add esp, 0x24
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x441b3c]
jmp 0x423f1f
mov ecx, 4
xor ebx, ebx
cmp ecx, 4
setb bl
mov eax, 0x20119
xor edx, edx
jmp dword [ebx*4 + 0x441ba4]
mov eax, dword [esp + 8]
mov edx, eax
and edx, 0x104
mov ecx, eax
or eax, 0x104
imul eax, edx
xor edx, 0x104
and ecx, 0xfffffefb
imul ecx, edx
mov edx, ecx
and edx, eax
xor eax, ecx
lea ecx, [esi + edx*4]
lea eax, [ecx + eax*2]
push eax
push dword [esp + 4]
call fcn.00438360
add esp, 8
mov dword [esp], eax
lea ebp, [eax + esi*2]
xor edi, edi
xor eax, eax
cmp edi, dword [esp + 8]
setb al
jmp dword [eax*4 + 0x441b44]
inc edi
xor eax, eax
cmp edi, dword [esp + 8]
setb al
jmp dword [eax*4 + 0x441b44]
mov esi, dword [esp + 0x24]
mov eax, esi
inc eax
jns 0x423d60
mov eax, 0xffffffff
jmp 0x423d67
lea eax, [esi*2 + 2]
push eax
call fcn.004082a0
add esp, 4
mov ebx, eax
mov dword [esp + 0x20], esi
lea eax, [esp + 0x20]
push eax
push ebx
push edi
push dword [esp + 0x18]
call fcn.0043aa00
add esp, 0x10
mov ecx, dword [case.0x423c73.7]
nop
jmp ecx
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x441b5c]
lea eax, [esp + 0x18]
push dword [esp + 0xc]
push 0
push 0x20019
push eax
push ebx
call fcn.0043a920
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x441b64]
mov dword [esp + 0x1c], 0x800
mov dword [esp + 0x28], 0x30863e79
mov dword [esp + 0x2c], 0x34833282
mov dword [esp + 0x30], 0x8963689
mov dword [esp + 0x34], 0xc550a80
mov dword [esp + 0x38], 0xb20eac
mov dword [esp + 0x3c], 0x40302a4
xor eax, eax
nop
nop
nop
movzx ecx, byte [esp + eax + 0x28]
lea edx, [eax + 0x95]
and edx, ecx
add edx, edx
sub ecx, edx
add ecx, eax
mov edx, ecx
and edx, 1
or ecx, 1
add ecx, edx
add cl, 0xec
mov byte [esp + eax + 0x28], cl
inc eax
cmp eax, 0x18
jne case.default.0x423e4c
lea eax, [esp + 0x1c]
lea ecx, [esp + 0x28]
push eax
lea eax, [esp + 0x44]
push eax
push 0
push ecx
push dword [esp + 0x28]
call fcn.0043b0d0
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x441b6c]
jmp 0x423e8b
movzx eax, word [esp + 0x40]
test ax, ax
je 0x423e82
lea ecx, [esp + 0x42]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [ebp], ax
add ebp, 2
movzx eax, word [ecx]
add ecx, 2
test ax, ax
jne 0x423e70
mov word [ebp], 0xa
add ebp, 2
mov ecx, dword [0x446b30]
test ecx, ecx
je case.0x423c73.11
mov eax, dword [esp + 0x18]
xor edx, edx
mov esi, dword [0x446b34]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [esi + edx*8], 0xb430e561
je 0x423ec0
inc edx
cmp ecx, edx
jne 0x423eb0
jmp case.0x423c73.11
mov ecx, dword [esi + edx*8 + 4]
cmp ecx, 0xffffffff
je case.0x423c73.11
push eax
push 4
push ecx
push dword [0x446b38]
call fcn.004383c0
add esp, 0x10
nop
nop
nop
nop
nop
mov eax, dword [case.0x423c73.9]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
jmp dword [0x441b84]
push ebx
call fcn.004082b0
add esp, 4
inc edi
xor eax, eax
cmp edi, dword [esp + 8]
setb al
jmp dword [eax*4 + 0x441b44]
mov word [ebp], 0
mov esi, ebp
sub esi, dword [esp]
sar esi, 1
mov ecx, dword [0x446b30]
test ecx, ecx
je case.default.0x423f8f
mov eax, dword [esp + 0xc]
xor edx, edx
mov edi, dword [0x446b34]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [edi + edx*8], 0xb430e561
je 0x423f50
inc edx
cmp ecx, edx
jne 0x423f40
jmp case.default.0x423f8f
mov ecx, dword [edi + edx*8 + 4]
cmp ecx, 0xffffffff
je case.default.0x423f8f
push eax
push 4
push ecx
push dword [0x446b38]
call fcn.004383c0
add esp, 0x10
nop
nop
nop
nop
nop
lea eax, [esp + 0x40]
push eax
call fcn.0043a240
add esp, 4
cmp dword [esp + 0x40], 1
sete cl
and cl, al
movzx eax, cl
mov ecx, 2
jmp dword [eax*4 + 0x441b8c]
xor ecx, ecx
jmp dword [0x441ba0]
xor ebx, ebx
cmp ecx, 4
setb bl
mov eax, 0x20119
xor edx, edx
jmp dword [ebx*4 + 0x441ba4]
xor eax, eax
mov esi, dword [esp]
cmp ebp, esi
setne al
xor ebp, ebp
xor ebx, ebx
jmp dword [eax*4 + 0x441bb4]
movzx ecx, word [esi]
test cx, cx
je 0x42402b
lea eax, [esi + 2]
xor ebp, ebp
jmp 0x423ffc
inc ebp
movzx ecx, word [eax]
add eax, 2
test cx, cx
je 0x42402b
cmp cx, 0x7f
jbe 0x423ff0
movzx edx, cx
cmp edx, 0x7ff
ja 0x424020
add ebp, 2
jmp 0x423ff1
cmp cx, 0xffff
je 0x423ff1
add ebp, 3
jmp 0x423ff1
lea eax, [ebp + 1]
mov dword [esp + 0x14], eax
mov dword [esp + 4], ebp
jmp dword [0x441bbc]
push dword [esp + 0x14]
call fcn.004082a0
add esp, 4
mov edi, eax
mov eax, ebp
mov ebp, edi
test eax, eax
je 0x424188
mov eax, dword [esp]
movzx eax, word [eax]
mov ebp, edi
test ax, ax
je 0x424188
mov ebx, dword [esp]
mov ecx, dword [esp + 4]
mov ebp, edi
movzx edx, ax
lea esi, [ebx + 2]
cmp dx, 0x7f
ja 0x424090
lea eax, [ebp + 1]
mov byte [ebp], dl
jmp 0x424120
cmp edx, 0x7ff
ja 0x4240c0
cmp ecx, 2
jb 0x4240c0
mov eax, edx
shr eax, 6
add al, 0xc0
mov byte [ebp], al
and dl, 0x3f
or dl, 0x80
lea eax, [ebp + 2]
mov byte [ebp + 1], dl
jmp 0x424120
mov eax, edx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x424144
cmp ecx, 4
jb 0x424144
movzx esi, word [ebx + 2]
add ebx, 4
shl edx, 0xa
lea eax, [edx + esi]
add eax, 0xfca02400
mov edx, eax
shr edx, 0x12
add dl, 0xf0
mov byte [ebp], dl
mov edx, eax
shr edx, 0xc
and dl, 0x3f
or dl, 0x80
mov byte [ebp + 1], dl
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [ebp + 2], al
mov eax, esi
and al, 0x3f
or al, 0x80
mov edx, eax
lea eax, [ebp + 4]
mov byte [ebp + 3], dl
mov esi, ebx
nop
nop
nop
nop
nop
nop
nop
nop
mov edx, eax
not edx
and edx, ebp
not ebp
and ebp, eax
sub ecx, ebp
add ecx, edx
mov ebx, esi
mov ebp, eax
movzx eax, word [ebx]
test ax, ax
je 0x424188
test ecx, ecx
jne 0x424070
jmp 0x424188
movzx eax, ax
cmp eax, 0xdc00
jne 0x424152
mov ebx, esi
jmp 0x424132
cmp ecx, 3
jb 0x424184
mov eax, edx
shr eax, 0xc
or al, 0xe0
mov byte [ebp], al
mov eax, edx
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [ebp + 1], al
mov eax, edx
xor eax, 0xc0
or edx, 0x3f
and edx, eax
add dl, 0x80
lea eax, [ebp + 3]
mov byte [ebp + 2], dl
jmp 0x424120
mov eax, ebp
jmp 0x424120
mov byte [ebp], 0
mov dword [esp + 0x40], 0x86b78fac
mov dword [esp + 0x44], 0xb387b584
mov dword [esp + 0x48], 0x9e819c49
mov byte [esp + 0x4c], 0xb
xor eax, eax
nop
nop
nop
nop
nop
mov ecx, eax
add cl, 0x27
xor cl, byte [esp + eax + 0x40]
add cl, 0xc8
mov byte [esp + eax + 0x40], cl
inc eax
cmp eax, 0xd
jne 0x4241b0
lea eax, [esp + 0x40]
mov ecx, dword [esp + 0x854]
mov ebp, dword [esp + 4]
push ebp
push edi
push eax
call fcn.00409280
jmp dword [0x441bc8]
push dword [esp + 0x14]
call fcn.004082a0
add esp, 4
mov dword [esp + 0x10], eax
mov ecx, eax
test ebp, ebp
je 0x424338
mov eax, dword [esp]
movzx eax, word [eax]
mov ecx, dword [esp + 0x10]
test ax, ax
je 0x424338
mov ebp, dword [esp]
mov edx, dword [esp + 4]
mov ecx, dword [esp + 0x10]
nop
nop
nop
nop
nop
movzx ebx, ax
lea esi, [ebp + 2]
cmp bx, 0x7f
ja 0x424240
lea edi, [ecx + 1]
mov byte [ecx], bl
jmp 0x4242d0
cmp ebx, 0x7ff
ja 0x424270
cmp edx, 2
jb 0x424270
mov eax, ebx
shr eax, 6
add al, 0xc0
mov byte [ecx], al
and bl, 0x3f
or bl, 0x80
lea edi, [ecx + 2]
mov byte [ecx + 1], bl
jmp 0x4242d0
mov eax, ebx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4242f5
cmp edx, 4
jb 0x4242f5
movzx esi, word [ebp + 2]
add ebp, 4
shl ebx, 0xa
lea eax, [ebx + esi]
add eax, 0xfca02400
mov ebx, eax
shr ebx, 0x12
add bl, 0xf0
mov byte [ecx], bl
mov ebx, eax
shr ebx, 0xc
and bl, 0x3f
or bl, 0x80
mov byte [ecx + 1], bl
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [ecx + 2], al
mov eax, esi
and al, 0x3f
or al, 0x80
lea edi, [ecx + 4]
mov byte [ecx + 3], al
mov esi, ebp
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, edi
not eax
and eax, ecx
not ecx
and ecx, edi
sub edx, ecx
add edx, eax
mov ebp, esi
mov ecx, edi
movzx eax, word [ebp]
test ax, ax
je 0x424338
test edx, edx
jne 0x424220
jmp 0x424338
movzx eax, ax
cmp eax, 0xdc00
jne 0x424303
mov ebp, esi
jmp 0x4242e2
cmp edx, 3
jb 0x424334
mov eax, ebx
shr eax, 0xc
or al, 0xe0
mov byte [ecx], al
mov eax, ebx
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [ecx + 1], al
mov eax, ebx
xor eax, 0xc0
or ebx, 0x3f
and ebx, eax
add bl, 0x80
lea edi, [ecx + 3]
mov byte [ecx + 2], bl
jmp 0x4242d0
mov edi, ecx
jmp 0x4242d0
mov byte [ecx], 0
mov dword [esp + 0x40], 0x86b78fac
mov dword [esp + 0x44], 0xb387b584
mov dword [esp + 0x48], 0x9e819c49
mov byte [esp + 0x4c], 0xb
xor eax, eax
nop
nop
nop
nop
nop
nop
mov ecx, eax
add cl, 0x27
xor cl, byte [esp + eax + 0x40]
add cl, 0xc8
mov byte [esp + eax + 0x40], cl
inc eax
cmp eax, 0xd
jne 0x424360
lea eax, [esp + 0x40]
mov ecx, dword [esp + 0x854]
mov ebp, dword [esp + 4]
push ebp
push dword [esp + 0x14]
push eax
call fcn.00409280
jmp case.0x423f8f.12
mov ebx, eax
mov esi, dword [esp]
jmp dword [0x441bcc]
push edi
call fcn.004082b0
add esp, 4
push esi
call fcn.00436dd0
add esp, 4
mov eax, ebx
add esp, 0x840
pop esi
pop edi
pop ebx
pop ebp
ret
int3
int3
int3
push edi
call fcn.004082b0
add esp, 4
and bl, 1
jmp case.0x425133.188
jmp 0x426e90
push dword [ebp - 0x44]
call fcn.004082b0
add esp, 4
int3
adc al, byte [edx]
fst qword [ebx]
inc edx
add byte [ebx], bl
adc eax, dword [edx]
and eax, 0xd2004213
adc eax, dword [edx]
fst qword [ebx]
inc edx
add al, dh
adc eax, dword [edx]
lock adc eax, dword [edx]
lock adc eax, dword [edx]
adc eax, dword [edx]
rcl dword [edx + eax*2], 0
out dx, eax
adc al, 66
add bh, ch
adc al, 0x42
add dh, dh
adc al, 0x42
add byte [eax], bl
adc eax, 0x15790042
inc edx
add byte [esi + esi + 0x15340042], ah
inc edx
add byte [ebp + edx + 0x15d00042], bh
inc edx
add byte [eax + 0x35], ah
inc edx
add ch, dh
adc eax, 0x21b00042
inc edx
add bh, bh
adc eax, 0x21b00042
inc edx
add byte [esi + 0x2d], bl
inc edx
add byte [eax - 0x53ffbdd3], al
sub eax, 0x35760042
inc edx
add byte [eax], al
xor eax, 0x35760042
inc edx
add byte [eax + 0x35], ah
inc edx
add byte [edx + 0x7b00422d], dh
inc edx
add byte [eax + 0x2f], dl
inc edx
add byte [ebx + 0x2e], bh
inc edx
add byte [eax - 0x78ffbdd3], dl
sub eax, 0x2f870042
sub eax, 0x2f870042
inc edx
add byte [eax + 0x2f], dh
inc edx
add byte [ebp + 0x422f], bh
xor al, 0x42
add byte [edx], dl
xor byte [edx], al
xor byte [eax], dh
inc edx
add byte [eax + 0x30], al
inc edx
add byte [edi], bl
xor dword [edx], eax
adc byte [edx], dh
inc edx
add byte [ecx], al
add byte [eax], al
add byte [ecx], al
add byte [eax], al
add byte [edi], bl
xor dword [edx], eax
add dword [eax], eax
add byte [eax], al
loopne 0x4415a1
inc edx
add byte [0x60004231], dh
xor eax, dword [edx]
jl 0x4415b0
inc edx
add byte [eax + 0x60004234], dl
adc eax, 0x36970042
inc edx
add byte [esi + esi + 0x3ae00042], ah
inc edx
add byte [esi - 0x18ffbdc1], bh
cmp al, byte [edx]
mov edi, 0xb0004243
cmp al, 0x42
add byte [edx + 0x3c], bh
inc edx
add al, dl
cmp al, 0x42
add byte [edi + 0x12004243], bh
aas
adc bh, byte [edi]
inc edx
add byte [eax], bl
aas
inc edx
add byte [eax], bl
aas
inc edx
add byte [ecx + 0x3d], al
inc edx
add byte [eax - 0x6fffbdc3], dl
cmp eax, 0x3d920042
inc edx
add byte [esi - 0x3cffbdc3], bl
cmp eax, 0x3e550042
inc edx
add byte [ebx + 0x3e], dl
inc edx
add al, ah
inc edx
add al, dh
inc edx
add dl, dh
inc edx
add dl, dh
inc edx
add al, bh
inc edx
add byte [eax], dh
cmp eax, 0x3ca80042
inc edx
add byte [eax - 0x5fffbdc1], ch
aas
inc edx
add byte [eax - 0x57ffbdc1], ah
aas
inc edx
add byte [eax - 0x4fffbdc1], ch
cmp al, 0x42
add byte [edi - 0x2fffbdbd], bh
cmp al, byte [edx]
loopne 0x441654
inc edx
add byte [esi - 0x2cffbdc1], bh
aas
inc edx
add byte [edi + 0x3c004243], bh
inc eax
inc edx
add byte [ebp - 0x5fffbdbd], dl
inc ebx
inc edx
add byte [ecx - 0x56ffbdbd], ch
inc ebx
inc edx
add byte [eax - 0xfffbdc3], dl
inc edx
add byte [eax - 0x1cffbdc1], ah
inc ecx
inc edx
add byte [eax + ecx*2 + 0x42], cl
add byte [ebx + 0x48], dl
inc edx
add byte [esi + 0x4c], ch
outsb dx, byte [esi]
dec esp
inc edx
add byte [ecx + ecx*2], cl
inc edx
add byte [ebx + 0x4d], ah
inc edx
add byte [ebx + 0x4d], ah
inc edx
add byte [eax + 0x4c], dl
inc edx
add byte [eax + 0x4c], dl
inc edx
add byte [esi + 0x4c], dl
inc edx
add byte [ecx + 0x49], ah
inc edx
add byte [eax - 0x5bffbdb7], dh
dec ecx
inc edx
add byte [eax - 0x46ffbdb7], dh
dec ecx
inc edx
add cl, al
dec ecx
inc edx
add bh, ch
dec ecx
inc edx
add byte [ebx], ah
dec edx
inc edx
add byte [ecx - 0x6dffbdb5], cl
dec ebx
inc edx
add byte [ebx - 0x22ffbdb5], dh
dec ebx
inc edx
add bh, dl
dec ebx
inc edx
add byte [ecx + 0x5000424b], dh
dec ecx
inc edx
add byte [eax + 0x49], dl
inc edx
add byte [eax + 0x49], dl
inc edx
add byte [ebp + 0x4c], bh
inc edx
add byte [eax + 0x4c], ch
inc edx
add byte [0x3100424d], ah
dec ebp
inc edx
add byte [ecx], dh
dec ebp
inc edx
add byte [esi + 0x4c], ch
inc edx
add byte [eax + ecx*2 + 0x42], cl
add byte [eax + 0x4c], dl
inc edx
add byte [ecx], bh
dec edi
inc edx
add byte [edi + ecx*2], dl
inc edx
add byte [eax + edx*2 + 0x42], cl
add byte [esi + 0x50], ah
inc edx
add byte [esi + 0x50], ah
inc edx
add byte [edi + 0x50], dh
inc edx
add byte [edi], dl
push ecx
inc edx
add byte [esi + 0x51], bl
inc edx
add byte [ecx + edx*2 + 0x51b90042], al
inc edx
add ah, al
push ecx
inc edx
add byte [esi], dl
push edx
inc edx
add byte [esi - 0x2fffbdae], ch
push edx
inc edx
add dh, bl
push edx
inc edx
add byte [ebx + 0x57], bl
inc edx
add byte [ebp - 0xfffbda1], bl
push edx
inc edx
add byte [ebx - 0xfffbda9], ah
push edx
inc edx
add al, dh
push edx
inc edx
add dl, bh
push edx
inc edx
add byte [ebx + edx*2], dl
inc edx
add byte [ebx + edx*2], dl
inc edx
add byte [edx], bl
push ebx
inc edx
add byte [ebx], ah
push ebx
inc edx
add byte [eax], dh
push ebx
inc edx
add byte [edx], dh
push ebx
inc edx
add byte [edx], dh
push ebx
inc edx
add byte [edx], bh
push ecx
inc edx
add byte [ebp + 0x4400425f], bl
push ecx
inc edx
add byte [edi - 0xeffbdad], al
push esp
inc edx
add byte [ebp - 0xcffbdad], dl
push esp
inc edx
add byte [ebp - 0x42ffbdac], bl
push esp
inc edx
add al, ah
push esp
inc edx
add al, ch
push esp
inc edx
add bl, dh
push esp
inc edx
add byte [esi], bh
push ebp
inc edx
add byte [ecx - 0x62ffbdab], ch
pop edi
inc edx
add al, bl
push ebp
inc edx
add byte [edi], dl
push esi
inc edx
add byte [ebp - 0x78ffbda1], bl
push esi
inc edx
add byte [edx + 0x5b], dl
inc edx
add byte [esi + 0x5b], dh
inc edx
add byte [esi + 0x5b], dh
inc edx
add byte [eax - 0x7dffbda5], al
pop ebx
inc edx
add byte [ecx], ah
push edi
inc edx
add byte [eax - 0x48ffbda5], dl
pop ebx
inc edx
add cl, dl
pop ebx
inc edx
add byte [ebp - 0x62ffbda1], bl
pop edi
inc edx
add byte [eax], dl
pop esp
inc edx
add byte [eax], dl
pop esp
inc edx
add byte [esi], dl
pop esp
inc edx
add byte [esi], dl
pop esp
inc edx
add byte [ebp + 0x5c], al
inc edx
add dl, bh
pop ebx
inc edx
add byte [edi + 0x5c], bh
inc edx
add byte [ebp + 0x4500425f], bl
pop ebp
inc edx
add cl, ah
pop esp
inc edx
add byte [eax], dh
pop ebp
inc edx
add byte [eax], dh
pop ebp
inc edx
add byte [edx], dh
pop ebp
inc edx
add byte [eax], dl
pop ebp
inc edx
add byte [eax], dl
pop ebp
inc edx
add byte [edx], dl
pop ebp
inc edx
add byte [edx], dl
pop ebp
inc edx
add al, dl
pop esp
inc edx
add byte [ebp + 0x5d], al
inc edx
add byte [ebp + 0x5d], ch
inc edx
add byte [edi], al
pop esi
inc edx
add bl, al
pop esi
inc edx
add byte [ebp - 0x6ffbda1], cl
pop ebp
inc edx
add byte [ebx + 0x5d], bl
inc edx
add byte [eax + 0x5b], ah
inc edx
add byte [ebx + 0x5b], dh
inc edx
add byte [ebx + 0x5b], dh
inc edx
add byte [ebx + 0x5b], dh
inc edx
add byte [ecx], ah
push edi
inc edx
add byte [ecx], ah
push edi
inc edx
add byte [ebx], ch
push edi
inc edx
add byte [edi], bh
push edi
inc edx
add byte [edi + edx*2 + 0x42], cl
add byte [edi + edx*2 + 0x42], cl
add byte [edx + ebx*2], al
inc edx
add byte [edx + ebx*2], al
inc edx
add byte [ecx], al
add byte [eax], al
add byte [edx + ebx*2], al
inc edx
add byte [edx], cl
pop edx
inc edx
add byte [ecx], bl
pop edx
inc edx
add byte [ecx], bl
pop edx
inc edx
add byte [edx - 0x7cffbdab], bl
pop edx
inc edx
add byte [eax - 0x6fffbda6], dl
pop edx
inc edx
add byte [esi - 0x39ffbda6], dl
pop edx
inc edx
add byte [ebp - 0x5affbda1], bl
pop edx
inc edx
add byte [ebx - 0x4bffbda6], ch
pop edx
inc edx
add byte [ecx], al
add byte [eax], al
add byte [edx + ebx*2 + 0x54f30042], dh
inc edx
add bl, dh
push esp
inc edx
add cl, dh
push esp
inc edx
add byte [ecx], bh
dec edi
inc edx
add byte [edx + edx*2 + 0x53300042], bh
inc edx
add byte [eax + 0x1000425b], al
pop esp
inc edx
add byte [eax], dh
pop ebp
inc edx
add byte [eax], dl
pop ebp
inc edx
add byte [0x3800425e], cl
push edi
inc edx
add byte [ecx], al
add byte [eax], al
add byte [eax + 0x100425a], dl
add byte [eax], al
add byte [ecx], al
add byte [eax], al
add byte [ecx], al
add byte [eax], al
add dh, dh
insd dword es:[edi], dx
inc edx
add byte [eax + 0x60], dh
inc edx
add byte [eax + 0x60], dh
inc edx
add byte [edx + 0x64], dl
inc edx
add byte [ebx + 0x60], bl
inc edx
add byte [eax + 0x60a00042], al
inc edx
add byte [eax - 0x59ffbda0], ah
pushal
inc edx
add byte [esi + 0x52004260], ch
inc edx
add byte [esi + 0x60004260], bh
bound eax, qword [edx]
add al, 0x64
inc edx
add byte [esp], al
inc edx
add byte [0x97004264], bh
inc edx
add byte [esi], bl
inc edx
add byte [eax], dh
inc dx
add byte [ecx + 0x66], dl
inc edx
add dh, dh
insd dword es:[edi], dx
inc edx
add byte [ecx - 0x55ffbd9a], al
inc dx
add byte [ebx + 0x1004268], dh
imul eax, dword [edx], case.0x425133.145
cmp byte [edx + 0x42], ch
add byte [eax + 106], ah
inc edx
add byte [ecx + 0x6a], bh
inc edx
add byte [ecx + 0x6a], bh
inc edx
add cl, bh
push 0x6a850042
inc edx
add byte [ecx - 0x5cffbd96], dl
inc dx
add byte [eax - 0x4dffbd96], dh
push 0x42
add byte [edx - 0x47ffbd96], dh
push 0x42
add cl, al
push 0x42
add cl, al
push 0x42
add byte [esi], bl
inc edx
add byte [eax], ah
imul eax, dword [edx], 0x22
imul eax, dword [edx], 0x2b
imul eax, dword [edx], 0x40
imul eax, dword [edx], 0x47
imul eax, dword [edx], 0xffffffcc
insd dword es:[edi], dx
inc edx
add al, ah
insd dword es:[edi], dx
inc edx
add dh, ah
insd dword es:[edi], dx
inc edx
add al, dh
insd dword es:[edi], dx
inc edx
add al, dh
insd dword es:[edi], dx
inc edx
add byte [eax + 0x64], ah
inc edx
add byte [eax + 0x64], ah
inc edx
add byte [ebx + 0x64], al
inc edx
add byte [esp + 0x42], cl
add byte [edx + 0x64], dl
inc edx
add byte [edx + 0x64], dl
inc edx
add byte [ecx], al
add byte [eax], al
add byte [eax + 0x60], dh
inc edx
add byte [eax - 0x37ffbda0], ah
pushal
inc edx
add byte [esi], bh
push 0x42
add byte [eax + 0x2000426a], dh
imul eax, dword [edx], 0xfffffff0
insd dword es:[edi], dx
inc edx
add byte [esp + esi*2], ch
inc edx
add al, ah
jbe 0x441a29
add cl, bh
jbe 0x441a2d
add bl, dh
jbe 0x441a31
add byte [ecx + 0x73], bh
inc edx
add byte [edi], cl
outsb dx, byte [esi]
inc edx
add byte [ebx], bl
outsb dx, byte [esi]
inc edx
add byte [ebx], ah
outsb dx, byte [esi]
inc edx
add byte [edi + esi*2], cl
inc edx
add byte [esi], al
jae 0x441a49
add byte [esi], al
jae 0x441a4d
add byte [esi], al
jae 0x441a51
add byte [ecx], ch
outsb dx, byte [esi]
inc edx
add byte [ebx + 0x77], ah
inc edx
add byte [esi + 0x6e], ah
inc edx
add byte [eax + 0x3c00426e], cl
ja 0x441a65
add byte [ebx + esi*2 + 0x740d0042], al
inc edx
je 0x441a6d
add dl, ah
outsd dx, dword [esi]
inc edx
add byte [eax], dh
outsd dx, dword [esi]
inc edx
add byte [ebx + 0x6f], bh
inc edx
add byte [ebx - 0x74ffbd91], cl
outsd dx, dword [esi]
inc edx
add byte [ebx - 0x64ffbd91], cl
outsd dx, dword [esi]
inc edx
add byte [ebx - 0x2fffbd91], ch
outsd dx, dword [esi]
inc edx
add al, dl
outsd dx, dword [esi]
inc edx
add al, dl
outsd dx, dword [esi]
inc edx
add dh, dl
outsd dx, dword [esi]
inc edx
add byte [ebx + 0x3b00426f], bh
jo 0x441aa1
add byte [eax + 0x70], ah
inc edx
add byte [ebx + 0x70], dh
inc edx
jo 0x441aa9
add byte [edx - 0x44ffbd90], dl
jo 0x441ab1
add dl, dh
jo 0x441ab5
add cl, ch
jo 0x441ab9
add byte [ebp + 0x72], bl
inc edx
add byte [esi + 0x72], ah
inc edx
add byte [esi + 0x72], ah
inc edx
add byte [esi + 0x72], ah
inc edx
add byte [eax + 0x72], dh
inc edx
add byte [edx + 0x72], dh
inc edx
add byte [eax + 0x72], bh
inc edx
add byte [ebx - 0x7cffbd8e], al
jb 0x441add
add byte [ebx], ch
jo 0x441ae1
add al, dl
jb 0x441ae5
add dl, dl
jb 0x441ae9
add ch, bl
jb 0x441aed
add dh, dl
outsd dx, dword [esi]
inc edx
add dh, dl
outsd dx, dword [esi]
inc edx
add al, ah
outsd dx, dword [esi]
inc edx
add dl, ah
outsd dx, dword [esi]
inc edx
add byte [eax], al
jae 0x441b01
add byte [eax], al
jae 0x441b05
add byte [ebp - 0x62ffbd8d], bl
jae 0x441b0d
add byte [esi - 0x4effbd8d], ah
jae 0x441b15
add byte [ecx + 0x4d004273], dh
outsb dx, byte [esi]
inc edx
add byte [ecx], al
add byte [eax], al
add byte [ebx + 0x77], ah
inc edx
ja 0x441b25
add byte [ebp + 0x6e], dl
outsb dx, byte [esi]
inc edx
add byte [esi + 0x6e], bl
outsb dx, byte [esi]
inc edx
add byte [esi], al
jae 0x441b31
add byte [eax], dl
jae 0x441b35
add cl, bh
jbe 0x441b39
add cl, bh
jbe 0x441b3d
add byte [ebp + esi*2 + 0x73120042], bl
inc edx
jae 0x441b45
add byte [ebx], al
ja 0x441b49
add byte [0xd0004277], bl
outsd dx, dword [esi]
inc edx
add byte [edi + 0x70], al
inc edx
add byte [eax + 0x72], dh
inc edx
jb 0x441b59
add al, dl
jb 0x441b5d
add al, ah
outsd dx, dword [esi]
inc edx
add byte [eax], al
jae 0x441b65
add byte [ecx], al
add byte [eax], al
add byte [eax], dl
jae 0x441b6d
add byte [esi - 0x18ffbdc1], bh
cmp al, byte [edx]
jp 0x441b72
cmp al, 0x42
inc edx
add byte [eax - 0x57ffbdc4], dh
cmp al, 0x42
add byte [eax - 0x2fffbdc4], ch
cmp al, 0x42
add al, dl
cmp al, 0x42
add byte [edx], dl
aas
inc edx
add byte [ecx + 0x3d], al
inc edx
add byte [eax - 0x6fffbdc3], dl
cmp eax, 0x3d920042
inc edx
add byte [eax - 0xdffbdc3], dl
cmp eax, 0x3d900042
inc edx
add byte [eax - 0x6dffbdc3], dl
cmp eax, 0x3d900042
inc edx
add dl, dh
cmp eax, 0x3ef20042
inc edx
inc edx
add byte [esi - 0x1fffbdc3], bl
inc edx
add bl, al
cmp eax, 0x3e530042
inc edx
inc edx
add byte [ebp + 0x3e], dl
inc edx
add al, dh
inc edx
add al, dh
inc edx
add al, dh
inc edx
add dl, dh
inc edx
add al, bh
inc edx
add byte [eax], dh
cmp eax, 0x3fa00042
aas
aas
inc edx
add byte [eax - 0x5fffbdc1], ch
aas
inc edx
add byte [eax - 0x5fffbdc1], ah
aas
inc edx
add byte [eax - 0x1fffbdc1], ch
cmp al, byte [edx]
sar byte [edx], 1
inc edx
add byte [esi - 0x1fffbdc1], bh
cmp al, byte [edx]
test eax, 0xd3004243
aas
inc edx
add byte [eax + eax*2], bh
inc edx
add bl, ah
inc ecx
inc edx
add bl, ah
inc ecx
inc edx
add byte [ebp - 0x5fffbdbd], dl
inc ebx
inc edx
add byte [ecx + 0x4c004243], ch
dec eax
inc edx
add byte [ebx + 0x48], dl
inc edx
add byte [ecx + ecx*2], cl
inc edx
add byte [esi + 0x4c], ch
inc edx
add byte [eax + 0x4c], dl
inc edx
add byte [ecx + 0x49], ah
inc edx
add byte [eax + 0x4c], dl
inc edx
add byte [eax + 0x4c], dl
inc edx
add byte [eax + 0x4c], dl
inc edx
add byte [esi + 0x4c], dl
inc edx
add byte [eax + 0x4c], ch
inc edx
add byte [ebp + 0x4c], bh
inc edx
add byte [ecx + ecx*2 + 0x49b00042], ah
inc edx
add byte [eax + 0x49], dl
inc edx
add byte [ecx + 0x50004249], bh
dec ecx
inc edx
add bh, ch
dec ecx
inc edx
add byte [eax + 0x49], dl
inc edx
add byte [ebx], ah
dec edx
inc edx
add byte [ecx - 0x6dffbdb5], cl
dec ebx
inc edx
add byte [ecx - 0x4cffbdb5], dh
dec ebx
inc edx
add bh, dl
dec ebx
inc edx
add ch, bl
dec ebx
inc edx
add byte [0x3100424d], ah
dec ebp
inc edx
add byte [edi + ecx*2], dl
dec edi
inc edx
add byte [ecx], bh
dec edi
inc edx
add byte [eax + edx*2 + 0x42], cl
add byte [esi + 0x50], ah
inc edx
add byte [edi], dl
push ecx
inc edx
add byte [edi + 0x50], dh
inc edx
add byte [edx], bh