Function at 0x427590
Capabilities:
Encode data using xor

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x88
mov dword [esp], 0x23632145
mov dword [esp + 4], 0x27962594
mov dword [esp + 8], 0x3b9b397c
mov dword [esp + 0xc], 0x3f9f3d88
mov dword [esp + 0x10], 0x339e3155
mov dword [esp + 0x14], 0x378e3560
mov dword [esp + 0x18], 0xbb409bd
mov dword [esp + 0x1c], 0xfab0da8
mov dword [esp + 0x20], 0x3a001b2
mov dword [esp + 0x24], 0x7b405bd
mov dword [esp + 0x28], 0x1bb619bc
mov dword [esp + 0x2c], 0x1fac1d4c
mov dword [esp + 0x30], 0x13b411af
mov dword [esp + 0x34], 0x17aa15ad
mov dword [esp + 0x38], 0x6bd969cd
lea eax, [esp + 0x3c]
mov word [esp + 0x3c], 0x6d6c
mov dword [esp + 0x3e], 0
mov byte [esp + 0x42], 0
xor ecx, ecx
nop
nop
nop
nop
nop
movzx edx, byte [esp + ecx]
lea esi, [ecx + 0x4b505c08]
and esi, edx
add edx, ecx
add edx, 0x4b505c08
add esi, esi
sub edx, esi
mov esi, edx
and esi, 0x34013d7
or edx, 0xcf7e7bd7
add edx, esi
mov esi, edx
and esi, 1
xor edx, 1
lea edx, [edx + esi*2]
mov byte [esp + ecx], dl
mov edx, ecx
not edx
or edx, 1
add edx, ecx
inc edx
lea esi, [ecx + ecx]
and esi, 2
neg esi
add ecx, esi
inc ecx
lea ecx, [ecx + edx*2]
cmp ecx, 0x43
jb 0x425840
lea esi, [esp + 0x4a]
mov edx, esp
mov edi, esi
mov ecx, 0xf
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
lea edi, [esp + 0x86]
mov ecx, 1
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
lea ebp, [esp + 0x44]
push ebp
push 0
push 0
push 0x1e
push esi
push 0
call dword [0x44cda8]
mov dword [esp], 0x296a6b81
mov word [esp + 4], 0
mov byte [esp + 6], 0
mov ecx, 0x97
mov edx, 0x68
nop
nop
nop
nop
nop
nop
nop
nop
movzx edi, byte [esp + ecx - 0x97]
mov ebx, edx
xor ebx, ecx
and ebx, edi
xor ebx, ecx
add bl, 0xd
mov byte [esp + ecx - 0x97], bl
inc ecx
dec edx
cmp ecx, 0x9e
jne case.default.0x42591e
xor ecx, ecx
cmp eax, dword [esp]
setne cl
xor ebx, ebx
jmp dword [ecx*4 + 0x4473e0]
mov ebx, dword [esp + 0x44]
test ebx, ebx
jns 0x425934
mov eax, 0xffffffff
jmp 0x425937
lea eax, [ebx + ebx]
push eax
call fcn.004083e0
add esp, 4
mov edi, eax
push ebp
push ebx
push eax
push 0x1e
push esi
push 0
call dword [0x44cda8]
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x4473e8]
xor ebx, ebx
jmp dword [0x4473f0]
mov dword [esp], 0x13fa11ec
mov dword [esp + 4], 0x1f881d81
mov dword [esp + 8], 0x1bf719f4
mov dword [esp + 0xc], 0x7e40596
mov dword [esp + 0x10], 0x39001e9
mov dword [esp + 0x14], 0xf0e0de0
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, eax
add cl, 0xc4
xor cl, byte [esp + eax]
add cl, 0x2c
mov byte [esp + eax], cl
inc eax
cmp eax, 0x18
jne 0x4259a0
push 0
push 0
lea eax, [esp + 8]
push eax
push edi
push dword [esp + 0xac]
call fcn.00421510
add esp, 0x14
mov ebx, eax
jmp dword [0x4473f0]
push edi
call fcn.004083f0
add esp, 4
mov eax, ebx
add esp, 0x88
pop esi
pop edi
pop ebx
pop ebp
ret
lea eax, [esp + 0x78]
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.00441640
add esp, 0x24
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x447420]
xor eax, eax
jmp 0x427585
mov eax, dword [case.0x42591e.20]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
xor ecx, ecx
lea eax, [esp + 0x92]
mov dword [esp + 0x54], eax
lea eax, [esp + 0x94]
mov dword [esp + 0x4c], eax
lea eax, [esp + 0x10]
mov dword [esp + 0x28], eax
mov dword [esp + 0x24], eax
lea eax, [esp + 0xa2]
mov dword [esp + 0x58], eax
xor eax, eax
mov dword [esp + 0x3c], 0
cmp ecx, dword [esp + 0x34]
setb al
lea edx, [esp + 0x132]
lea ebx, [esp + 0x132]
lea ecx, [esp + 0x176]
mov dword [esp + 0x48], ecx
lea edi, [esp + 0x132]
mov dword [esp + 8], 0
jmp dword [eax*4 + 0x447438]
mov word [ebp], 0
mov eax, dword [esp + 0x3c]
mov ecx, eax
and cl, 1
movzx ecx, cl
jmp dword [ecx*4 + 0x447440]
jmp dword [0x4474d0]
mov ecx, dword [esp + 8]
inc ecx
lea eax, [esp + 0x10]
mov dword [esp + 0x28], eax
mov dword [esp + 0x24], eax
lea edx, [esp + 0x132]
lea ebx, [esp + 0x132]
lea edi, [esp + 0x132]
xor eax, eax
mov dword [esp + 8], ecx
cmp ecx, dword [esp + 0x34]
setb al
jmp dword [eax*4 + 0x447438]
mov dword [esp], edx
mov esi, ebp
mov ebp, dword [esp + 0x78]
mov eax, ebp
inc eax
lea eax, [ebp + ebp + 2]
jns 0x425bd1
mov eax, 0xffffffff
push eax
call fcn.004083e0
add esp, 4
mov dword [esp + 0x74], ebp
mov ebp, eax
lea eax, [esp + 0x74]
push eax
push ebp
push dword [esp + 0x10]
push dword [esp + 0x44]
call fcn.004413c0
add esp, 0x10
not eax
shr eax, 0x1f
mov dword [esp + 0x50], ebp
jmp dword [eax*4 + 0x447448]
mov ebp, esi
jmp dword [0x4474c8]
lea eax, [esp + 0x44]
push dword [esp + 0x38]
push 0
push 0x20019
push eax
push ebp
call fcn.004412c0
add esp, 0x14
not eax
shr eax, 0x1f
mov ebp, esi
jmp dword [eax*4 + 0x447450]
jmp dword [0x4474c8]
mov dword [esp + 0x90], 0xe37be15d
mov dword [esp + 0x94], 0xe774e547
mov dword [esp + 0x98], 0xdb49d947
mov dword [esp + 0x9c], 0xdf78dd43
mov dword [esp + 0xa0], 0xd37ed144
mov dword [esp + 0xa4], 0xd74fd563
mov dword [esp + 0xa8], 0xcb6ec956
mov dword [esp + 0xac], 0xcf59cd53
mov dword [esp + 0xb0], 0xc3a2c153
mov dword [esp + 0xb4], 0xc763c579
mov dword [esp + 0xb8], 0x3ba939ab
mov dword [esp + 0xbc], 0x3f993d9d
mov dword [esp + 0xc0], 0x33ac31a9
mov dword [esp + 0xc4], 0x37563593
mov dword [esp + 0xc8], 0x2bbf299b
mov dword [esp + 0xcc], 0x2fbd2d8e
mov dword [esp + 0xd0], 0x23b121a9
mov dword [esp + 0xd4], 0x278325b0
mov dword [esp + 0xd8], 0x1bb61985
mov dword [esp + 0xdc], 0x1f8c1dac
mov dword [esp + 0xe0], 0x13b4118f
mov dword [esp + 0xe4], 0x178a158d
mov dword [esp + 0xe8], 0xb9909ad
mov dword [esp + 0xec], 0xf470da0
mov dword [esp + 0xf0], 0x3550153
mov dword [esp + 0xf4], 0x7450551
mov dword [esp + 0xf8], 0x7b3c793e
mov dword [esp + 0xfc], 0x7f2a7d2c
mov dword [esp + 0x100], 0x73217121
mov dword [esp + 0x104], 0x77277525
mov dword [esp + 0x108], 0x6bce6939
mov dword [esp + 0x10c], 0x6f2c6d3f
mov dword [esp + 0x110], 0x632a6128
mov dword [esp + 0x114], 0x67366525
mov dword [esp + 0x118], 0x5b0b5908
mov dword [esp + 0x11c], 0x5f0a5d0c
mov dword [esp + 0x120], 0x53005112
mov dword [esp + 0x124], 0x57005515
mov dword [esp + 0x128], 0x4b1d491e
mov dword [esp + 0x12c], 0x4fe24d1a
lea eax, [esp + 0x130]
mov word [esp + 0x130], 0x4140
mov byte [edi + 4], 0
mov dword [edi], 0
xor ecx, ecx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx esi, byte [esp + ecx + 0x90]
lea edx, [ecx + 0x58349958]
mov edi, 0x7cb66a7
sub edi, ecx
and edi, 0x70362ba
and edx, 0x48201945
or edx, edi
xor edx, esi
mov esi, edx
and esi, 1
xor edx, 0xbb
lea edx, [edx + esi*2]
add dl, 0x47
mov byte [esp + ecx + 0x90], dl
mov edx, ecx
and edx, 1
xor ecx, 1
lea ecx, [ecx + edx*2]
cmp ecx, 0xa7
jb 0x425e20
lea edi, [esp + 0x934]
lea edx, [esp + 0x90]
mov ecx, 0x28
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
lea edi, [esp + 0x9d4]
mov ecx, 1
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov dword [esp + 0x90], 0xb925bbf7
mov dword [esp + 0x94], 0xbd28bfdd
mov dword [esp + 0x98], 0xb127b32d
mov dword [esp + 0x9c], 0xb52cb721
mov dword [esp + 0xa0], 0xa9c6ab20
mov dword [esp + 0xa4], 0xad31afc1
mov dword [esp + 0xa8], 0xa1c6a33e
mov dword [esp + 0xac], 0xa52fa731
mov dword [esp + 0xb0], 0xd9fadb31
mov dword [esp + 0xb4], 0xddaadfaa
mov dword [esp + 0xb8], 0xd197d3b0
mov dword [esp + 0xbc], 0xd540d75b
mov dword [esp + 0xc0], 0xc951cb42
mov dword [esp + 0xc4], 0xcd5acf5a
mov dword [esp + 0xc8], 0xc159c3a6
mov dword [esp + 0xcc], 0xc553c756
mov dword [esp + 0xd0], 0xf96bfb5b
mov dword [esp + 0xd4], 0xfd92ff6a
mov dword [esp + 0xd8], 0xf16df395
mov dword [esp + 0xdc], 0xf592f762
mov dword [esp + 0xe0], 0xe963eb65
mov dword [esp + 0xe4], 0xedceef7d
mov dword [esp + 0xe8], 0xe179e39f
mov dword [esp + 0xec], 0xe573e775
mov dword [esp + 0xf0], 0x19831b83
mov dword [esp + 0xf4], 0x1d8c1f87
mov dword [esp + 0xf8], 0x11321385
mov dword [esp + 0xfc], 0x159d1765
mov dword [esp + 0x100], 0x99f0b72
mov dword [esp + 0x104], 0xd9b0f87
mov dword [esp + 0x108], 0x1990398
mov dword [esp + 0x10c], 0x56a0793
mov dword [esp + 0x110], 0x39ac3b74
mov dword [esp + 0x114], 0x3da43fa9
mov dword [esp + 0x118], 0x31ae33a3
mov dword [esp + 0x11c], 0x35a337ab
mov dword [esp + 0x120], 0x295b2b58
mov dword [esp + 0x124], 0x2dba2fa3
mov dword [esp + 0x128], 0x21b323b0
mov dword [esp + 0x12c], 0x25bb27b1
mov dword [esp + 0x130], 0x59155b48
mov dword [esp + 0x134], 0x5d175f0d
mov dword [esp + 0x138], 0x51175317
mov dword [esp + 0x13c], 0x552c572a
mov dword [esp + 0x140], 0x491e4b04
mov dword [esp + 0x144], 0x4d1b4f1f
mov dword [esp + 0x148], 0x4115431b
mov dword [esp + 0x14c], 0x45224717
mov dword [esp + 0x150], 0x793c7b11
mov dword [esp + 0x154], 0x7d367f30
mov dword [esp + 0x158], 0x7122733b
mov dword [esp + 0x15c], 0x75217720
mov dword [esp + 0x160], 0x693e6b24
mov dword [esp + 0x164], 0x6d386f2e
mov dword [esp + 0x168], 0x6128632b
mov dword [esp + 0x16c], 0x652f672a
mov dword [esp + 0x170], 0x99f69b2e
lea eax, [esp + 0x174]
mov word [esp + 0x174], 0x9f98
mov ecx, dword [esp + 0x48]
mov byte [ecx + 2], 0
mov word [ecx], 0
mov ecx, 0x9f
mov edi, 0x60
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx esi, byte [esp + ecx - 0xf]
mov edx, edi
xor edx, ecx
and edx, esi
xor edx, ecx
add dl, 0xe5
mov byte [esp + ecx - 0xf], dl
inc ecx
dec edi
cmp ecx, 0x188
jne 0x426140
lea edi, [esp + 0x9d6]
lea edx, [esp + 0x90]
mov ecx, 0x39
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
lea edi, [esp + 0xaba]
mov ecx, 1
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov dword [esp + 0x90], 0x11851f63
mov dword [esp + 0x94], 0x15801375
mov dword [esp + 0x98], 0x9831785
mov dword [esp + 0x9c], 0xd6c0b99
mov dword [esp + 0xa0], 0x1620f98
mov dword [esp + 0xa4], 0x5640371
mov dword [esp + 0xa8], 0x399d0762
mov dword [esp + 0xac], 0x3d5d3b5d
mov dword [esp + 0xb0], 0x316d3f50
mov dword [esp + 0xb4], 0x356c3365
mov dword [esp + 0xb8], 0x295a3764
mov dword [esp + 0xbc], 0x2dbd2b59
mov dword [esp + 0xc0], 0x21b22fb8
mov dword [esp + 0xc4], 0x25b323b1
mov dword [esp + 0xc8], 0x594a27b9
mov dword [esp + 0xcc], 0x5dc85b28
mov dword [esp + 0xd0], 0x51385fcd
mov dword [esp + 0xd4], 0x55ce53cb
mov dword [esp + 0xd8], 0x49c35733
mov dword [esp + 0xdc], 0x4d3b4b24
mov dword [esp + 0xe0], 0x41da4fdb
mov dword [esp + 0xe4], 0x45d343dc
mov dword [esp + 0xe8], 0x79db47d5
mov dword [esp + 0xec], 0x7d317b14
mov dword [esp + 0xf0], 0x71377f29
mov dword [esp + 0xf4], 0x75377327
mov dword [esp + 0xf8], 0x69307732
mov dword [esp + 0xfc], 0x6d3e6b38
mov dword [esp + 0x100], 0x613b6f3f
mov dword [esp + 0x104], 0x65316333
mov dword [esp + 0x108], 0x99026737
mov dword [esp + 0x10c], 0x9dd89bcd
mov dword [esp + 0x110], 0x91d69fd4
mov dword [esp + 0x114], 0x95c293d3
mov dword [esp + 0x118], 0x89c597c4
mov dword [esp + 0x11c], 0x8dde8bd8
mov dword [esp + 0x120], 0x81dc8fce
mov dword [esp + 0x124], 0x85d483c3
mov dword [esp + 0x128], 0xb9cf87d2
mov dword [esp + 0x12c], 0xbdd6bbee
lea eax, [esp + 0x130]
mov word [esp + 0x130], 0xbfbc
mov word [ebx + 4], 0
mov dword [ebx], 0
xor ecx, ecx
nop
mov edx, ecx
add dl, 0x85
xor dl, byte [esp + ecx + 0x90]
add dl, 0x67
mov byte [esp + ecx + 0x90], dl
inc ecx
cmp ecx, 0xa8
jne 0x426360
lea edi, [esp + 0x892]
lea edx, [esp + 0x90]
mov ecx, 0x28
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
lea edi, [esp + 0x932]
mov ecx, 1
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov dword [esp + 0x90], 0x239b21fd
mov dword [esp + 0x94], 0x27942587
mov dword [esp + 0x98], 0x3b893987
mov dword [esp + 0x9c], 0x3f983d83
mov dword [esp + 0xa0], 0x339e3184
mov dword [esp + 0xa4], 0x379035eb
mov dword [esp + 0xa8], 0xbb309ae
mov dword [esp + 0xac], 0xfab0daf
mov dword [esp + 0xb0], 0x3f301ac
mov dword [esp + 0xb4], 0x7f805f0
mov dword [esp + 0xb8], 0x1bb619e8
mov dword [esp + 0xbc], 0x1fab1dc3
mov dword [esp + 0xc0], 0x13ae11a4
mov dword [esp + 0xc4], 0x17a915ab
mov dword [esp + 0xc8], 0xeb46e953
mov dword [esp + 0xcc], 0xef5ced3c
mov dword [esp + 0xd0], 0xe344e15f
mov dword [esp + 0xd4], 0xe75ae55d
mov dword [esp + 0xd8], 0xfb49f95d
mov dword [esp + 0xdc], 0xff21fd50
mov dword [esp + 0xe0], 0xf346f145
mov dword [esp + 0xe4], 0xf749f548
mov dword [esp + 0xe8], 0xcb71c977
mov dword [esp + 0xec], 0xcf07cd60
mov dword [esp + 0xf0], 0xc335c133
mov dword [esp + 0xf4], 0xc705c531
mov dword [esp + 0xf8], 0xdb1cd91e
mov dword [esp + 0xfc], 0xdf2add2c
mov dword [esp + 0x100], 0xd321d121
mov dword [esp + 0x104], 0xd727d525
mov dword [esp + 0x108], 0xab0ea959
mov dword [esp + 0x10c], 0xaf6cad5f
mov dword [esp + 0x110], 0xa36aa168
mov dword [esp + 0x114], 0xa756a565
mov dword [esp + 0x118], 0xbb4bb948
mov dword [esp + 0x11c], 0xbf4abd4c
mov dword [esp + 0x120], 0xb340b172
mov dword [esp + 0x124], 0xb740b575
mov dword [esp + 0x128], 0x8b7d897e
mov dword [esp + 0x12c], 0x8f228d7a
lea edx, [esp + 0x130]
mov word [esp + 0x130], 0x8180
mov eax, dword [esp]
mov byte [eax + 4], 0
mov dword [eax], 0
mov eax, 0x7230ac8
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ecx, byte [esp + eax - 0x7230a38]
xor ecx, eax
mov esi, ecx
and esi, 0x17
xor ecx, 0x17
lea ecx, [ecx + esi*2]
inc cl
mov byte [esp + eax - 0x7230a38], cl
inc eax
cmp eax, 0x7230b6f
jne 0x426590
lea eax, [esp + 0xb5e]
lea esi, [esp + 0x90]
mov ecx, 0x28
mov edi, eax
xchg esi, esi
rep movsd dword es:[edi], dword [esi]
xchg esi, esi
lea edi, [esp + 0xbfe]
mov ecx, 1
xchg esi, edx
rep movsw word es:[edi], word [esi]
xchg esi, edx
mov dword [esp + 0x90], 0xe905eb37
mov dword [esp + 0x94], 0xed18ef0d
mov dword [esp + 0x98], 0xf107f31d
mov dword [esp + 0x9c], 0xf51cf701
mov dword [esp + 0xa0], 0xf926fb00
mov dword [esp + 0xa4], 0xfd14ff29
mov dword [esp + 0xa8], 0x816d8316
mov dword [esp + 0xac], 0x856d8765
mov dword [esp + 0xb0], 0x89bd8b58
mov dword [esp + 0xb4], 0x8dbc8fb3
mov dword [esp + 0xb8], 0x914e93bc
mov dword [esp + 0xbc], 0x956d9741
mov dword [esp + 0xc0], 0x99769b60
mov dword [esp + 0xc4], 0x9d6f9f69
mov dword [esp + 0xc8], 0xa17ea371
mov dword [esp + 0xcc], 0xa550a770
mov dword [esp + 0xd0], 0xa940ab55
mov dword [esp + 0xd4], 0xad42af47
mov dword [esp + 0xd8], 0xb147b347
mov dword [esp + 0xdc], 0xb567b76c
mov dword [esp + 0xe0], 0xb94ebb4f
mov dword [esp + 0xe4], 0xbd4fbf54
mov dword [esp + 0xe8], 0x41af434d
mov dword [esp + 0xec], 0x4579479c
mov dword [esp + 0xf0], 0x49734b71
mov dword [esp + 0xf4], 0x4d8b4f73
mov dword [esp + 0xf8], 0x51985386
mov dword [esp + 0xfc], 0x55625760
mov dword [esp + 0x100], 0x596f5b63
mov dword [esp + 0x104], 0x5d695f6f
mov dword [esp + 0x108], 0x6186636b
mov dword [esp + 0x10c], 0x65a06755
mov dword [esp + 0x110], 0x69526b5c
mov dword [esp + 0x114], 0x6d5e6faf
mov dword [esp + 0x118], 0x7145735c
mov dword [esp + 0x11c], 0x75427740
mov dword [esp + 0x120], 0x794c7bb2
mov dword [esp + 0x124], 0x7d447fbf
mov dword [esp + 0x128], 0x13b0346
mov dword [esp + 0x12c], 0x5da073a
lea ebx, [esp + 0x130]
mov word [esp + 0x130], 0xb04
mov dword [esp + 0x132], 0
xor ecx, ecx
nop
nop
nop
nop
nop
nop
movzx edx, byte [esp + ecx + 0x90]
lea esi, [ecx + 0x1080e2a7]
and esi, edx
add edx, ecx
add edx, 0x1080e2a7
add esi, esi
sub edx, esi
add dl, 0xbd
mov byte [esp + ecx + 0x90], dl
mov edx, ecx
and edx, 1
xor ecx, 1
lea ecx, [ecx + edx*2]
cmp ecx, 0xa6
jb case.default.0x426866
lea edx, [esp + 0xabc]
lea esi, [esp + 0x90]
mov ecx, 0x28
mov edi, edx
xchg esi, esi
rep movsd dword es:[edi], dword [esi]
xchg esi, esi
lea edi, [esp + 0xb5c]
mov ecx, 1
xchg esi, ebx
rep movsw word es:[edi], word [esi]
xchg esi, ebx
lea ecx, [esp + 0x934]
mov dword [esp + 0x7c], ecx
lea ecx, [esp + 0x9d6]
mov dword [esp + 0x80], ecx
lea ecx, [esp + 0x892]
mov dword [esp + 0x84], ecx
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], edx
xor ecx, ecx
xor eax, eax
cmp ecx, 0x14
setne al
jmp dword [eax*4 + 0x447458]
mov eax, edi
and eax, 1
xor edi, 1
lea edi, [edi + eax*2]
xor eax, eax
cmp di, 0x35
setb al
jmp dword [eax*4 + 0x447460]
mov word [esi - 2], di
lea eax, [esp + 0x30]
lea ecx, [esp + 0xc00]
push dword [esp + 0x44]
push 0
push 0x20019
push eax
push ecx
call fcn.004412c0
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x447478]
mov dword [esp + 0x64], edi
mov dword [esp + 0x70], 0x800
mov dword [esp + 0x2c], 0x400
xor esi, esi
mov dword [esp + 4], 0
jmp 0x4268e4
mov esi, dword [esp]
inc esi
lea eax, [esp + 0x2c]
lea edi, [esp + 0x1e00]
lea ecx, [esp + 0x6c]
lea edx, [esp + 0x70]
push eax
push edi
push ecx
push edx
lea eax, [esp + 0xa0]
push eax
mov dword [esp + 0x14], esi
push esi
push dword [esp + 0x48]
call fcn.00441910
add esp, 0x1c
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x447480]
test byte [esp + 4], 1
sete al
mov edx, dword [esp + 0x6c]
cmp edx, 1
sete cl
and cl, al
movzx eax, cl
jmp dword [eax*4 + 0x447488]
xor eax, eax
cmp edx, 3
sete al
jmp dword [eax*4 + 0x447498]
mov dword [esp + 0x68], edx
mov dword [esp + 0x40], ebp
mov dword [esp + 0xc], 0x17891959
mov dword [esp + 0x10], 0x1381158b
mov dword [esp + 0x14], 0xf9c119d
mov dword [esp + 0x18], 0xb0a0d80
mov byte [esp + 0x1c], 0
mov ecx, 0xde375606
mov edx, 0xf9
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx eax, byte [esp + ecx + 0x21c8aa06]
mov esi, edx
xor esi, ecx
and esi, eax
xor esi, ecx
mov ebx, esi
and ebx, 0x61
add ebx, ebx
xor esi, 0x1e
sub ebx, esi
mov byte [esp + ecx + 0x21c8aa06], bl
inc ecx
dec edx
cmp ecx, 0xde375617
jne 0x426990
movzx ebx, word [esp + 0xc]
lea esi, [esp + 0x90]
test bx, bx
je 0x426a0d
lea edx, [esp + 0x90]
lea ebp, [esp + 0xc]
mov esi, edx
jmp 0x4269e9
movzx ebx, word [ebp]
test bx, bx
je 0x426a0d
movzx eax, word [edx]
test ax, ax
je 0x426a0b
add ebp, 2
add edx, 2
lea ecx, [esi + 2]
cmp ax, bx
je 0x426a03
mov esi, ecx
mov edx, ecx
je 0x4269e0
lea ebp, [esp + 0xc]
jmp 0x4269e0
xor esi, esi
xor eax, eax
test esi, esi
setne al
jmp dword [eax*4 + 0x447490]
xor eax, eax
cmp dword [esp + 0x68], 3
sete al
mov ebp, dword [esp + 0x40]
jmp dword [eax*4 + 0x447498]
mov dword [esp + 0xc], 0x9f7f9948
mov dword [esp + 0x10], 0xa3559d6b
mov dword [esp + 0x14], 0xa755a15b
mov dword [esp + 0x18], 0xab4ea552
mov word [esp + 0x1c], 0xa9a8
mov dword [esp + 0x1e], 0
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, eax
add cl, 0xda
xor cl, byte [esp + eax + 0xc]
add cl, 0xbe
mov byte [esp + eax + 0xc], cl
inc eax
cmp eax, 0x16
jne 0x426a70
movzx edi, word [esp + 0xc]
test di, di
je 0x426b30
lea ecx, [esp + 0x90]
lea edx, [esp + 0xc]
mov eax, ecx
jmp 0x426abc
movzx edi, word [edx]
test di, di
je 0x426b3b
movzx ebx, word [ecx]
test bx, bx
je 0x426b39
add edx, 2
add ecx, 2
lea esi, [eax + 2]
cmp bx, di
je 0x426ad6
mov eax, esi
mov ecx, esi
je 0x426ab0
lea edx, [esp + 0xc]
jmp 0x426ab0
mov ecx, dword [esp + 0x2c]
cmp ecx, 2
mov ebp, dword [esp + 0x40]
jb 0x426bf5
shr ecx, 1
mov eax, ecx
and eax, 3
je 0x426b96
xor edx, edx
lea edi, [esp + 0x1e00]
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx esi, word [edi]
xor ebx, ebx
test si, si
setne bl
lea edi, [edi + ebx*2]
mov word [ebp], si
add ebp, 2
inc edx
cmp eax, edx
jne 0x426b10
mov eax, ecx
sub eax, edx
jmp 0x426b98
lea eax, [esp + 0x90]
jmp 0x426b3b
xor eax, eax
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x4474a0]
mov edx, dword [esp + 0x2c]
cmp edx, 2
mov esi, dword [esp]
jb 0x426c78
shr edx, 1
mov ecx, edx
and ecx, 3
je 0x426c0f
xor edi, edi
lea eax, [esp + 0x1e00]
nop
movzx esi, word [eax]
xor ebx, ebx
test si, si
setne bl
lea eax, [eax + ebx*2]
mov word [ebp], si
add ebp, 2
inc edi
cmp ecx, edi
jne 0x426b70
mov ecx, edx
sub ecx, edi
mov esi, dword [esp]
jmp 0x426c18
mov eax, ecx
dec ecx
cmp ecx, 3
jb 0x426bf5
nop
nop
mov esi, ebp
movzx ecx, word [edi]
xor edx, edx
test cx, cx
setne dl
lea ebx, [edi + edx*2]
mov word [ebp], cx
movzx ecx, word [edi + edx*2]
xor edx, edx
test cx, cx
setne dl
lea edi, [ebx + edx*2]
mov word [ebp + 2], cx
movzx ecx, word [ebx + edx*2]
xor edx, edx
test cx, cx
setne dl
lea ebx, [edi + edx*2]
mov word [ebp + 4], cx
movzx edx, word [edi + edx*2]
xor ecx, ecx
test dx, dx
setne cl
mov word [ebp + 6], dx
add ebp, 8
lea edi, [ebx + ecx*2]
add eax, 0xfffffffc
jne 0x426ba0
mov word [ebp], 0x3a
mov word [ebp + 2], 0x20
add ebp, 4
mov al, 1
mov dword [esp + 4], eax
jmp case.0x426866.16
lea eax, [esp + 0x1e00]
mov ecx, edx
dec edx
cmp edx, 3
jb 0x426c78
nop
nop
mov esi, ebp
movzx edx, word [eax]
xor ebx, ebx
test dx, dx
setne bl
lea edi, [eax + ebx*2]
mov word [ebp], dx
movzx eax, word [eax + ebx*2]
xor edx, edx
test ax, ax
setne dl
lea ebx, [edi + edx*2]
mov word [ebp + 2], ax
movzx eax, word [edi + edx*2]
xor edx, edx
test ax, ax
setne dl
lea edi, [ebx + edx*2]
mov word [ebp + 4], ax
movzx edx, word [ebx + edx*2]
xor eax, eax
test dx, dx
setne al
mov word [ebp + 6], dx
add ebp, 8
lea eax, [edi + eax*2]
add ecx, 0xfffffffc
jne 0x426c20
mov esi, dword [esp]
mov word [ebp], 0xa
add ebp, 2
mov al, 1
mov dword [esp + 0x3c], eax
inc esi
jmp 0x4268e4
jmp dword [0x4474ac]
mov eax, dword [esp + 0x30]
mov dword [esp + 0xc], 0x7c7d7a7b
mov ecx, dword [esp + 0x24]
mov byte [ecx + 2], 0
mov word [ecx], 0
mov ecx, 0xad88646a
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edx, byte [esp + ecx + 0x52779ba2]
mov ebx, edx
and ebx, ecx
add bl, bl
sub dl, bl
movzx edx, dl
add edx, ecx
add dl, 0xee
mov byte [esp + ecx + 0x52779ba2], dl
inc ecx
cmp ecx, 0xad886471
jne 0x426cc0
mov ecx, dword [0x44cdac]
test ecx, ecx
je case.0x426866.21
mov edx, dword [esp + 0xc]
xor edi, edi
mov ebx, dword [0x44cdb0]
nop
nop
cmp dword [ebx + edi*8], 0x1b6183f2
je 0x426d10
inc edi
cmp ecx, edi
jne 0x426d00
jmp case.0x426866.21
mov ecx, dword [ebx + edi*8 + 4]
cmp ecx, edx
je case.0x426866.21
push eax
push 4
push ecx
push dword [0x44cdb4]
call fcn.0043e5b0
add esp, 0x10
jmp case.0x426866.21
jmp dword [0x4474b0]
mov eax, dword [esp + 0x30]
mov dword [esp + 0xc], 0x7c7d7a7b
mov ecx, dword [esp + 0x28]
mov byte [ecx + 2], 0
mov word [ecx], 0
mov ecx, 0xad88646a
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edx, byte [esp + ecx + 0x52779ba2]
mov ebx, edx
and ebx, ecx
add bl, bl
sub dl, bl
movzx edx, dl
add edx, ecx
add dl, 0xee
mov byte [esp + ecx + 0x52779ba2], dl
inc ecx
cmp ecx, 0xad886471
jne 0x426d60
mov ecx, dword [0x44cdac]
test ecx, ecx
je 0x426d30
mov edx, dword [esp + 0xc]
xor edi, edi
mov ebx, dword [0x44cdb0]
nop
nop
cmp dword [ebx + edi*8], 0x1b6183f2
je 0x426db0
inc edi
cmp ecx, edi
jne 0x426da0
jmp 0x426d30
mov ecx, dword [ebx + edi*8 + 4]
cmp ecx, edx
je 0x426d30
push eax
push 4
push ecx
push dword [0x44cdb4]
call fcn.0043e5b0
add esp, 0x10
jmp dword [0x4474b0]
mov eax, dword [case.0x426866.8]
mov esi, dword [esp + 0x60]
mov edi, dword [esp + 0x64]
nop
nop
nop
jmp eax
mov dword [esp + 0x5c], ecx
mov eax, dword [esp + ecx + 0x7c]
mov dword [esp + 0x90], 0x718e7f8c
mov dword [esp + 0x94], 0x75827380
mov dword [esp + 0x98], 0x49867784
mov dword [esp + 0x9c], 0x4de24bb8
mov word [esp + 0xa0], 0x4f4c
mov ecx, dword [esp + 0x58]
mov byte [ecx + 4], 0
mov dword [ecx], 0
mov ecx, 0x6febf3fd
mov edx, 0xdfd7e7fa
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov esi, edx
and esi, 0x2a
mov ebx, ecx
xor ebx, 0x95
add ebx, esi
add bl, 3
xor bl, byte [esp + ecx - 0x6febf36d]
add bl, 0x17
mov byte [esp + ecx - 0x6febf36d], bl
inc ecx
add edx, 2
cmp ecx, 0x6febf414
jne 0x426e60
movzx ecx, word [eax]
lea esi, [esp + 0xc00]
test cx, cx
je 0x426ec1
add eax, 2
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [esi], cx
add esi, 2
movzx ecx, word [eax]
add eax, 2
test cx, cx
jne 0x426eb0
mov word [esi], 0
movzx eax, word [esp + 0x90]
test ax, ax
je 0x426ef1
mov ecx, dword [esp + 0x54]
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [esi], ax
add esi, 2
movzx eax, word [ecx]
add ecx, 2
test ax, ax
jne 0x426ee0
mov word [esi], 0
mov di, 0x31
xor eax, eax
cmp di, 0x35
setb al
mov dword [esp + 0x60], esi
jmp dword [eax*4 + 0x447460]
mov eax, dword [case.0x426866.7]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
mov ecx, dword [esp + 0x5c]
add ecx, 4
xor eax, eax
cmp ecx, 0x14
setne al
jmp dword [eax*4 + 0x447458]
mov eax, dword [esp + 0x44]
mov dword [esp + 0x90], 0x7c7d7a7b
mov ecx, dword [esp + 0x4c]
mov byte [ecx + 2], 0
mov word [ecx], 0
mov ecx, 0xad88646a
nop
nop
nop
nop
nop
nop
nop
movzx edx, byte [esp + ecx + 0x52779c26]
mov ebx, edx
and ebx, ecx
add bl, bl
sub dl, bl
movzx edx, dl
add edx, ecx
add dl, 0xee
mov byte [esp + ecx + 0x52779c26], dl
inc ecx
cmp ecx, 0xad886471
jne 0x426f60
mov ecx, dword [0x44cdac]
test ecx, ecx
je 0x426fd0
mov edx, dword [esp + 0x90]
xor edi, edi
mov ebx, dword [0x44cdb0]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [ebx + edi*8], 0x1b6183f2
je 0x426fc0
inc edi
cmp ecx, edi
jne 0x426fb0
jmp 0x426fd0
mov ecx, dword [ebx + edi*8 + 4]
cmp ecx, edx
jne 0x42701c
nop
nop
nop
nop
nop
nop
nop
nop
jmp dword [0x4474c8]
push dword [esp + 0x50]
call fcn.004083f0
add esp, 4
mov ecx, dword [esp + 8]
inc ecx
lea eax, [esp + 0x10]
mov dword [esp + 0x28], eax
mov dword [esp + 0x24], eax
lea edx, [esp + 0x132]
lea ebx, [esp + 0x132]
lea edi, [esp + 0x132]
xor eax, eax
mov dword [esp + 8], ecx
cmp ecx, dword [esp + 0x34]
setb al
jmp dword [eax*4 + 0x447438]
push eax
push 4
push ecx
push dword [0x44cdb4]
call fcn.0043e5b0
add esp, 0x10
jmp dword [0x4474c8]
movzx ebx, word [esp + 0xe00]
test bx, bx
je 0x4271e4
xor esi, esi
lea eax, [esp + 0xe02]
mov ecx, ebx
jmp 0x42706c
inc esi
movzx ecx, word [eax]
add eax, 2
test cx, cx
je 0x42709b
cmp cx, 0x7f
jbe 0x427060
movzx edx, cx
cmp edx, 0x7ff
ja 0x427090
add esi, 2
jmp 0x427061
cmp cx, 0xffff
je 0x427061
add esi, 3
jmp 0x427061
mov dword [esp], esi
lea edi, [esi + esi]
push edi
call fcn.004083e0
add esp, 4
mov esi, eax
test bx, bx
mov dword [esp + 4], eax
je 0x4271fb
dec edi
lea edx, [esp + 0xe00]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ebx, bx
lea ebp, [edx + 2]
cmp bx, 0x7f
ja 0x4270f0
mov byte [esi], bl
lea ecx, [esi + 1]
jmp 0x427190
cmp ebx, 0x7ff
ja 0x427120
cmp edi, 2
jb 0x427120
mov eax, ebx
shr eax, 6
add al, 0xc0
mov byte [esi], al
and bl, 0x3f
or bl, 0x80
mov byte [esi + 1], bl
lea ecx, [esi + 2]
jmp 0x427190
mov eax, ebx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4271aa
cmp edi, 4
jb 0x4271aa
movzx eax, word [edx + 2]
add edx, 4
shl ebx, 0xa
add ebx, eax
add ebx, 0xfca02400
mov ecx, ebx
shr ecx, 0x12
mov ebp, ebx
shr ebp, 0x11
and ebp, 0xe0
xor ecx, 0xf0
add ecx, ebp
mov byte [esi], cl
mov ecx, ebx
shr ecx, 0xc
and cl, 0x3f
or cl, 0x80
mov byte [esi + 1], cl
shr ebx, 6
and bl, 0x3f
or bl, 0x80
mov byte [esi + 2], bl
and al, 0x3f
or al, 0x80
lea ecx, [esi + 4]
mov byte [esi + 3], al
mov ebp, edx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
add edi, esi
sub edi, ecx
mov edx, ebp
mov esi, ecx
movzx ebx, word [edx]
test bx, bx
je 0x4271fb
test edi, edi
jne 0x4270d0
jmp 0x4271fb
movzx eax, ax
cmp eax, 0xdc00
jne 0x4271b8
mov edx, ebp
jmp 0x427198
cmp edi, 3
jb 0x4271e0
mov eax, ebx
shr eax, 0xc
or al, 0xe0
mov byte [esi], al
mov eax, ebx
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [esi + 1], al
and bl, 0x3f
or bl, 0x80
lea ecx, [esi + 3]
mov byte [esi + 2], bl
jmp 0x427190
mov ecx, esi
jmp 0x427190
mov dword [esp], 0
push 0
call fcn.004083e0
add esp, 4
mov esi, eax
mov dword [esp + 4], eax
mov byte [esi], 0
mov dword [esp + 0x90], 0xa7a2a171
mov dword [esp + 0x94], 0xa38f8eb5
mov dword [esp + 0x98], 0xb8bcbeb1
mov dword [esp + 0x9c], 0xabab9273
mov dword [esp + 0xa0], 0xb8b5b6b4
mov dword [esp + 0xa4], 0x888cad4b
mov dword [esp + 0xa8], 0x868e8086
mov dword [esp + 0xac], 0x9f9a4387
mov word [esp + 0xb0], 0x119c
mov dword [esp + 0xb2], 0
mov word [esp + 0xb6], 0
mov eax, 0x8681bb8c
mov ecx, 0x97e4473
nop
movzx edx, byte [esp + eax + 0x797e4504]
mov esi, eax
and esi, 0x8280398f
mov edi, ecx
and edi, 0x70
or edi, esi
xor edi, edx
xor edi, 0x4018270
add edi, 0x5f775643
mov edx, edi
and edx, 1
xor edi, 1
lea edx, [edi + edx*2]
mov byte [esp + eax + 0x797e4504], dl
inc eax
dec ecx
cmp eax, 0x8681bbb4
jne 0x427280
lea eax, [esp + 0x90]
mov ecx, dword [esp + 0x2214]
push dword [esp]
push dword [esp + 8]
push eax
call fcn.004092c0
movzx ebx, word [esp + 0xe00]
xor esi, esi
test bx, bx
je 0x42733b
xor esi, esi
lea eax, [esp + 0xe02]
mov ecx, ebx
jmp 0x42730c
inc esi
movzx ecx, word [eax]
add eax, 2
test cx, cx
je 0x42733b
cmp cx, 0x7f
jbe 0x427300
movzx edx, cx
cmp edx, 0x7ff
ja 0x427330
add esi, 2
jmp 0x427301
cmp cx, 0xffff
je 0x427301
add esi, 3
jmp 0x427301
lea eax, [esi + 1]
push eax
call fcn.004083e0
add esp, 4
mov edi, eax
mov dword [esp + 4], eax
test bx, bx
je 0x427484
mov edi, dword [esp + 4]
test esi, esi
je 0x427484
lea edx, [esp + 0xe00]
mov ecx, esi
mov edi, dword [esp + 4]
nop
movzx ebx, bx
lea ebp, [edx + 2]
cmp bx, 0x7f
ja 0x427390
mov byte [edi], bl
lea eax, [edi + 1]
jmp 0x427430
cmp ebx, 0x7ff
ja 0x4273c0
cmp ecx, 2
jb 0x4273c0
mov eax, ebx
shr eax, 6
add al, 0xc0
mov byte [edi], al
and bl, 0x3f
or bl, 0x80
mov byte [edi + 1], bl
lea eax, [edi + 2]
jmp 0x427430
mov eax, ebx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x42744a
cmp ecx, 4
jb 0x42744a
movzx eax, word [edx + 2]
mov dword [esp], eax
add edx, 4
shl ebx, 0xa
add ebx, eax
add ebx, 0xfca02400
mov eax, ebx
shr eax, 0x12
mov ebp, ebx
shr ebp, 0x11
and ebp, 0xe0
xor eax, 0xf0
add eax, ebp
mov byte [edi], al
mov eax, ebx
shr eax, 0xc
and al, 0x3f
or al, 0x80
mov byte [edi + 1], al
shr ebx, 6
and bl, 0x3f
or bl, 0x80
mov byte [edi + 2], bl
mov eax, dword [esp]
and al, 0x3f
or al, 0x80
mov ebx, eax
lea eax, [edi + 4]
mov byte [edi + 3], bl
mov ebp, edx
nop
nop
nop
nop
nop
nop
add ecx, edi
sub ecx, eax
mov edx, ebp
mov edi, eax
movzx ebx, word [edx]
test bx, bx
je 0x427484
test ecx, ecx
jne 0x427370
jmp 0x427484
movzx eax, ax
cmp eax, 0xdc00
jne 0x427458
mov edx, ebp
jmp 0x427438
cmp ecx, 3
jb 0x427480
mov eax, ebx
shr eax, 0xc
or al, 0xe0
mov byte [edi], al
mov eax, ebx
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [edi + 1], al
and bl, 0x3f
or bl, 0x80
lea eax, [edi + 3]
mov byte [edi + 2], bl
jmp 0x427430
mov eax, edi
jmp 0x427430
mov byte [edi], 0
mov dword [esp + 0x90], 0xa7a2a171
mov dword [esp + 0x94], 0xa38f8eb5
mov dword [esp + 0x98], 0xb8bcbeb1
mov dword [esp + 0x9c], 0xabab9273
mov dword [esp + 0xa0], 0xb8b5b6b4
mov dword [esp + 0xa4], 0x888cad4b
mov dword [esp + 0xa8], 0x868e8086
mov dword [esp + 0xac], 0x9f9a4387
mov word [esp + 0xb0], 0x119c
mov dword [esp + 0xb2], 0
mov word [esp + 0xb6], 0
mov eax, 0x8681bb8c
mov ecx, 0x97e4473
nop
nop
nop
nop
nop
nop
nop
nop
movzx edx, byte [esp + eax + 0x797e4504]
mov edi, eax
and edi, 0x8280398f
mov ebx, ecx
and ebx, 0x70
or ebx, edi
xor ebx, edx
xor ebx, 0x4018270
add ebx, 0x5f775643
mov edx, ebx
and edx, 1
xor ebx, 1
lea edx, [ebx + edx*2]
mov byte [esp + eax + 0x797e4504], dl
inc eax
dec ecx
cmp eax, 0x8681bbb4
jne 0x427510
lea eax, [esp + 0x90]
mov ecx, dword [esp + 0x2214]
push esi
mov esi, dword [esp + 8]
push esi
push eax
call fcn.004092c0
jmp dword [0x4474d8]
jmp dword [0x4474e0]
push esi
mov esi, eax
call fcn.004083f0
mov eax, esi
add esp, 4
and al, 1
add esp, 0x2200
pop esi
pop edi
pop ebx
pop ebp
ret
push ebp
push ebx
push edi
push esi
sub esp, 0x54
cmp byte [esp + 0x6c], 0
je 0x4275e0
mov eax, dword [esp + 0x74]
mov edi, dword [esp + 0x68]
mov ebp, dword [eax + 4]
mov eax, 0xfffffffe
nop
nop
cmp word [ebp + eax + 2], 0
lea eax, [eax + 2]
jne 0x4275b0
mov ecx, 0xfffffffe
cmp word [edi + ecx + 2], 0
lea ecx, [ecx + 2]
jne 0x4275c0
sar eax, 1
sar ecx, 1
lea edx, [eax + ecx]
add edx, 0x1f
test edx, edx
jns 0x4275e7
mov eax, 0xffffffff
jmp 0x4275f0
xor ebx, ebx
jmp 0x4278b6
add eax, ecx
lea eax, [eax*2 + 0x3e]
push eax
call fcn.004083e0
add esp, 4
movzx ecx, word [ebp]
mov edx, eax
test cx, cx
je 0x427622
add ebp, 2
mov edx, eax
nop
nop
nop
nop
nop
nop
nop
mov word [edx], cx
add edx, 2
movzx ecx, word [ebp]
add ebp, 2
test cx, cx
jne 0x427610
mov dword [esp + 0x40], eax
mov word [edx], 0x5c
mov dword [esp], 0x9722993c
mov dword [esp + 4], 0x930d9507
mov dword [esp + 8], 0x8f1a9131
mov dword [esp + 0xc], 0x8b068d23
mov dword [esp + 0x10], 0x870a8929
mov dword [esp + 0x14], 0x83268519
mov dword [esp + 0x18], 0xff6c8139
mov dword [esp + 0x1c], 0xfb67fd60
mov dword [esp + 0x20], 0xf76bf970
mov dword [esp + 0x24], 0xf356f568
mov dword [esp + 0x28], 0xef77f144
mov dword [esp + 0x2c], 0xeb77ed66
mov dword [esp + 0x30], 0xe775e957
mov dword [esp + 0x34], 0xe377e571
mov dword [esp + 0x38], 0xdfdee144
mov word [esp + 0x3c], 0
mov byte [esp + 0x3e], 0
mov ebp, 0xa6
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx esi, byte [esp + ebp - 0xa6]
lea ebx, [ebp - 0x80]
or ebx, ebp
and ebx, esi
mov eax, ebx
or al, 0xfd
inc al
mov ecx, ebx
and cl, 0xfd
mul cl
mov ecx, eax
mov eax, esi
add cl, al
mov eax, ebx
shr al, 1
and al, 1
or bl, 2
mul bl
add al, al
sub cl, al
movzx eax, cl
add eax, ebp
add al, 0xc2
mov byte [esp + ebp - 0xa6], al
inc ebp
cmp ebp, 0xe5
jne 0x4276c0
add edx, 2
movzx eax, word [edi]
test ax, ax
je 0x427731
add edi, 2
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [edx], ax
add edx, 2
movzx eax, word [edi]
add edi, 2
test ax, ax
jne 0x427720
mov word [edx], 0
movzx eax, word [esp]
test ax, ax
je 0x427761
lea ecx, [esp + 2]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [edx], ax
add edx, 2
movzx eax, word [ecx]
add ecx, 2
test ax, ax
jne 0x427750
mov word [edx], 0
mov dword [esp + 0x44], 0x61b067be
mov dword [esp + 0x48], 0x5df563ff
mov dword [esp + 0x4c], 0x595e5fc8
mov word [esp + 0x50], 0
mov byte [esp + 0x52], 0
mov eax, 0xe6
mov ecx, 0x28185619
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edx, byte [esp + ecx - 0x281855d5]
mov edi, eax
xor edi, ecx
and edi, edx
xor edi, ecx
mov edx, edi
and edx, 1
xor edi, 1
lea edx, [edi + edx*2]
add dl, 0x82
mov byte [esp + ecx - 0x281855d5], dl
dec eax
inc ecx
cmp eax, 0xd7
jne 0x4277a0
mov dword [esp], 0x19b51bcf
mov dword [esp + 4], 0xe552e7af
mov dword [esp + 8], 0xe113e359
mov dword [esp + 0xc], 0xed59ef39
mov dword [esp + 0x10], 0xe946eb5e
mov dword [esp + 0x14], 0xf54ff759
mov dword [esp + 0x18], 0xf112f349
mov dword [esp + 0x1c], 0xfd51ff23
mov dword [esp + 0x20], 0xf94efb4b
mov word [esp + 0x24], 0xc7f8
mov dword [esp + 0x26], 0
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ecx, byte [esp + eax]
lea edi, [eax - 0xa261385]
xor edi, ecx
lea edx, [edi + 0x98]
mov ecx, 0x67
sub ecx, edi
or ecx, 1
add ecx, edi
mov ebp, 0xcd419e67
sub ebp, edi
mov ebx, ebp
not ebx
and ebp, 0x2c
and edx, 0xd3
or edx, ebp
xor edx, 0x2d
and ebx, 1
or ebx, edx
add ebx, ecx
add bl, 0x99
mov byte [esp + eax], bl
mov ecx, eax
and ecx, 1
xor eax, 1
lea eax, [eax + ecx*2]
cmp eax, 0x2a
jb 0x427830
lea eax, [esp + 0x44]
mov ecx, esp
push 0
push 4
push 0xc00000
push eax
mov esi, dword [esp + 0x50]
push esi
push ecx
mov eax, dword [esp + 0x8c]
push dword [eax]
call fcn.00423110
add esp, 0x1c
mov ebx, eax
push esi
call fcn.004083f0
add esp, 4
mov eax, ebx
add esp, 0x54
pop esi
pop edi
pop ebx
pop ebp
ret
pop ecx
inc edx
add dh, bl
pop ecx
inc edx
add byte [ecx + ebx*2 + 0x42], bl
add byte [ecx + ebx*2 + 0x42], ah
add ch, dl
pop ecx
inc edx
add dh, bl
pop ecx
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 dh, bl
pop ecx
inc edx
add byte [edx - 0x27ffbda6], ch
pop edx
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 - 0x27ffbd8b], dl
pop edx
inc edx
add bh, bl
pop edx
inc edx
add al, dh
pop edx
inc edx
add al, dh
pop edx
inc edx
add al, dh
pop edx
inc edx
add dl, dh
pop edx
inc edx
add byte [ecx + 0x5b], ah
inc edx
add byte [edx - 0x7cffbda5], bh
jne 0x447485
add byte [edx + 0x5b], bh
inc edx
add byte [esi], al
pop esp
inc edx
add byte [eax], dl
pop esp
inc edx
add byte [edi], dh
pop esp
inc edx
add byte [eax + 0x5c], al
inc edx
add byte [eax], bh
outsd dx, dword [esi]
inc edx
add byte [eax], al
outsb dx, byte [esi]
inc edx
add byte [eax], dl
outsd dx, dword [esi]
inc edx
add byte [ebx + 0x20004268], cl
outsd dx, dword [esi]
inc edx
add byte [eax], ah
outsd dx, dword [esi]
inc edx
add byte [eax], ah
outsd dx, dword [esi]
inc edx
add byte [edx], ah
outsd dx, dword [esi]
inc edx
add byte [eax + 0x68], dh
inc edx
add byte [ebx - 0x6fffbd98], bh
insb byte es:[edi], dx
inc edx
add byte [eax], ah
imul eax, dword [edx], case.0x426866.12
push eax
imul eax, dword [edx], case.0x426866.14
loopne 0x447500
inc edx
add al, ah
push 0x6a300042
inc edx
add al, ah
push 0x6b490042
inc edx
add byte [esi + 0x3600426c], dl
insd dword es:[edi], dx
inc edx
add al, ah
insd dword es:[edi], dx
inc edx
add byte [esi], dh
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 + 0x68], dh
inc edx
add al, dh
insd dword es:[edi], dx
inc edx
add dh, dl
outsd dx, dword [esi]
inc edx
add byte [eax - 0x24ffbda5], al
jb 0x447515
add byte [eax + esi*2], dh
inc edx
add byte [eax + 0x75], dh
inc edx
add byte [eax + esi*2], dh
inc edx
add byte [esi + 0x75], dh
inc edx
add byte [ebx + 0x4275], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [0xe6004279], dl
js 0x447539
add al, dh
js 0x44753d
add byte [ebx], bl
add byte [edx], 0x1c
jns 0x447545
sbb al, 0x79
inc edx
add dh, dh
jg 0x447549
add cl, dl
jp 0x44754d
add byte [eax], dl
jnp 0x447551
add byte [ecx + 0x70004282], ah
jnp 0x447559
add byte [edx + 0x7b], dh
inc edx
add byte [eax + 0x7e], al
inc edx
add byte [edx - 0x2affbd85], al
jnp 0x447569
add dl, bh
jnp 0x44756d
add byte [esi - 0x57ffbd84], ch
jl 0x447575
add byte [eax + 0x7d], dh
inc edx
add dl, bh
jge 0x44757d
add dl, bh
jge 0x447581
add byte [eax], al
jle 0x447585
add byte [edx], al
jle 0x447589
add byte [edx], al
jle 0x44758d
add byte [eax], cl
jle 0x447591
add byte [eax + 0x7b], ah
inc edx
jnp 0x447595
add bh, bh
jp 0x447599
add byte [0xc300427f], cl
jg 0x44759d
add bl, al
jg 0x4475a1
add al, ah
jg 0x4475a5
add bh, dl
jg 0x4475a9
add bh, dl
jg 0x4475ad
add al, dh
jg 0x4475b1
add dh, dh
jg 0x4475b5
add dh, dh
jg 0x4475b9
add byte [ecx + 0x5004282], ah
add byte [edx], 0
jns 0x4475c5
add byte [0x1b004279], dl
jns 0x4475c9
add byte [ebx], bl
add byte [edx], 0x30
add byte [edx], 0x7c
add byte [edx], 0x89
add byte [edx], 0x89
add byte [edx], 0xf0
js 0x4475e1
add byte [eax + 0x7b], dh
inc edx
jnp 0x4475e5
add al, ah
jl 0x4475e9
add byte [eax], al
jle 0x4475ed
add byte [eax + 0x7e], ah
inc edx
jle 0x4475f1
add bl, ch
jg 0x4475f5
add byte [edx], ah
mov byte [edx], al
hlt
xchg dword [edx], eax
push cs
mov byte [edx], al
and byte [eax - 0x77ddffbe], cl
inc edx
add byte [eax], ch
mov byte [edx], al
sub byte [eax - 0x76efffbe], cl
inc edx
add cl, dh
mov dword [edx], eax
retf 0x428e
mov byte [edx], al
adc byte [ecx - 0x760effbe], cl
inc edx
add dl, cl
mov es, word [edx]
pop es
mov al, byte [edx]
lodsd eax, dword [esi]
nop
inc edx
add byte [0x5000428a], bh
mov al, byte [edx]
push eax
mov al, byte [edx]
push eax
mov al, byte [edx]
push edx
mov al, byte [edx]
or dword [edx - 0x7528ffbe], 0x42
add al, cl
mov al, byte [edx]
mov al, byte [edx]
xlatb
mov al, byte [edx]
enter 0x428a, 0
ror byte [edx - 0x7528ffbe], 1
inc edx
add bh, dl
mov al, byte [edx]
fimul word [edx - 0x74d8ffbe]
inc edx
add byte [edi - 0x75], bl
inc edx
add byte [edi - 0x75], bl
inc edx
add byte [ebp - 0x1effbd75], ch
mov word [edx], es
hlt