Function at 0x42b350
Capabilities:
Encode data using xor

Disassembly:
mov ebx, dword [esi + 0xc]
mov word [eax], 0
push 0x60
push 3
push 0x120089
push ebx
push edi
call fcn.0043d5a0
add esp, 0x14
jmp dword [0x4425dc]
add byte [eax], al
mov dword [esi + 0xa8], esp
push eax
mov dword [esi + 0xf8], esp
sub esp, 0x20
mov dword [esi + 0xac], esp
sub esp, 8
mov dword [esi + 0x13c], esp
push eax
mov dword [esi + 0x98], esp
sub esp, 0x10
mov dword [esi + 0x2c], esp
sub esp, 8
mov dword [esi + 0x24], esp
sub esp, 8
mov dword [esi + 0x78], esp
push eax
mov dword [esi + 0x84], esp
push eax
mov dword [esi + 0x54], esp
sub esp, 8
mov dword [esi + 0xcc], esp
sub esp, 0x180
mov dword [esi + 0x34], esp
sub esp, 0x20
mov dword [esi + 0x30], esp
push eax
mov dword [esi + 0xa0], esp
sub esp, 0x1c
mov dword [esi + 0x58], esp
push eax
mov dword [esi + 0x40], esp
push eax
mov dword [esi + 0x88], esp
push eax
mov dword [esi + 0x130], esp
sub esp, 8
mov dword [esi + 0x12c], esp
sub esp, 0x20
mov dword [esi + 0x134], esp
push eax
mov dword [esi + 0x138], esp
add dword [eax], eax
add byte [ebx + 0x66891cec], al
dec esp
add dword [eax], eax
add byte [ebx + 0x66891cec], al
dec esp
push eax
mov dword [esi + 0x64], esp
push eax
mov dword [esi + 0xc8], esp
sub esp, 8
mov dword [esi + 0xfc], esp
sub esp, 0x44
mov dword [esi + 0x38], esp
sub esp, 0x14
mov dword [esi + 0x9c], esp
sub esp, 0xc
mov dword [esi + 0x90], esp
sub esp, 0xc
mov dword [esi + 0xe0], esp
sub esp, 0x18
mov dword [esi + 0xdc], esp
push eax
mov dword [esi + 0x94], esp
push eax
mov dword [esi + 0xb4], esp
sub esp, 8
mov dword [esi + 0x104], esp
sub esp, 8
mov dword [esi + 0xb8], esp
sub esp, 0x30
mov dword [esi + 0xb0], esp
sub esp, 0x38
mov dword [esi + 0xec], esp
sub esp, 0x44
mov dword [esi + 0xd8], esp
sub esp, 0x10
mov dword [esi + 0xa4], esp
push eax
mov dword [esi + 0x114], esp
push eax
mov dword [esi + 0x158], esp
sub esp, 8
mov dword [esi + 0xe4], esp
sub esp, 8
mov eax, esp
and eax, 0xfffffff8
mov dword [esi + 0x100], eax
mov esp, eax
push eax
push eax
mov dword [esi + 0x8c], esp
sub esp, 8
mov eax, esp
and eax, 0xfffffff8
mov dword [esi + 0x110], eax
add dword [eax], eax
invalid
mov esp, eax
push eax
add dword [eax], eax
add byte [ecx - 0x76afaf3c], cl
push eax
mov dword [esi + 0x28], esp
sub esp, 0xc
mov dword [esi + 0xe8], esp
add byte [eax], al
add byte [ebx - 0x5976f714], al
and byte [ecx], al
add dword [eax], eax
push eax
mov dword [esi + 0x28], esp
sub esp, 0xc
mov dword [esi + 0xe8], esp
add byte [eax], al
add byte [ebx - 0x5976f714], al
and byte [ecx], al
add dword [eax], eax
invalid
add byte [eax], al
add byte [ebx - 0x5976f714], al
and byte [ecx], al
add dword [eax], eax
invalid
add dword [eax], eax
add byte [ebx + 0x668908ec], al
cmp al, 0x83
in al, dx
or byte [ecx - 0x71f7c20], cl
sub esp, 8
mov dword [esi + 0x3c], esp
sub esp, 8
mov eax, esp
and eax, 0xfffffff8
mov dword [esi + 0x10c], eax
mov esp, eax
push eax
push eax
mov dword [esi + 0x108], esp
sub esp, 0x88
mov eax, esp
loopne 0x415c96
loopne 0x415d0d
add byte [eax], al
add byte [ecx - 0x71f7c20], cl
loopne 0x415c96
loopne 0x415d0d
loopne 0x415c96
loopne 0x415d0d
mov dword [esi + 0x74], eax
mov esp, eax
push eax
sub esp, 0x14
mov dword [esi + 0x7c], esp
sub esp, 0x14
mov dword [esi + 0x154], esp
push eax
mov ecx, esp
push eax
mov dword [esi + 0x11c], esp
sub esp, 8
mov dword [esi + 0x15c], esp
sub esp, 0x10
mov dword [esi + 0x150], esp
sub esp, 0x10
mov dword [esi + 0x148], esp
sub esp, 8
mov edi, esp
mov eax, dword [ebp + 0xc]
mov ebx, dword [eax + 8]
mov eax, 0xfffffffe
nop
cmp word [ebx + eax + 2], 0
lea eax, [eax + 2]
jne 0x415d60
mov edx, eax
sar eax, 1
mov dword [esi + 0x118], eax
cmp eax, 0xfffffff2
mov dword [esi + 0x124], ecx
mov dword [esi + 0x14c], edi
mov dword [esi + 0x60], edx
jge 0x415d90
mov eax, 0xffffffff
jmp 0x415d93
lea eax, [edx + 0x1c]
push eax
call fcn.00408b60
add esp, 4
mov dword [esi + 0x14], eax
mov eax, dword [esi]
mov dword [eax], 0x9669947f
mov dword [eax + 4], 0x8a1a8876
mov dword [eax + 8], 0x8ead8c1f
mov dword [eax + 0xc], 0x82648079
mov dword [eax + 0x10], 0x86168411
mov dword [eax + 0x14], 0xba26b81e
mov dword [eax + 0x18], 0xbebdbc25
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edx, eax
and edx, 9
mov ecx, eax
and ecx, 2
mov edi, ecx
xor edi, 2
imul edi, edx
or edx, 2
imul edx, ecx
mov ecx, eax
xor ecx, 0x6d0095cb
add ecx, edi
mov edi, dword [esi]
movzx edi, byte [edi + eax]
add ecx, edx
mov edx, ecx
and edx, edi
add ecx, edi
add edx, edx
sub ecx, edx
add ecx, 0x97fb51a7
mov edx, ecx
and edx, 1
xor ecx, 1
lea ecx, [ecx + edx*2]
mov edx, dword [esi]
mov byte [edx + eax], cl
inc eax
cmp eax, 0x1c
jne 0x415de0
movzx ecx, word [ebx]
mov edi, dword [esi + 0x14]
mov eax, edi
test cx, cx
je 0x415e61
add ebx, 2
mov eax, edi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [ebx]
add ebx, 2
test cx, cx
jne 0x415e50
mov word [eax], 0
movzx ecx, word [edx]
test cx, cx
je 0x415ac0
add edx, 2
mov ebx, dword [esi + 0xc]
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 0x415e80
jmp 0x415ac3
inc esp
add byte [ebx + 0x88b0c45], cl
mov eax, 0xfffffffe
nop
cmp word [ecx + eax + 2], 0
lea eax, [eax + 2]
add dh, byte [ebp - 0xb]
add dh, byte [ebp - 0xb]
cmp eax, 0xffffffd7
mov dword [esi + 0x128], ecx
jge 0x415f0d
mov eax, 0xffffffff
jmp 0x415f10
add eax, 0x28
push eax
call fcn.00408b60
add esp, 4
mov dword [esi + 0xbc], eax
mov eax, dword [esi + 0x20]
mov dword [eax], 0x48b5768a
mov ch, 0x48
mov ch, 0x48
mov dword [eax + 4], 0x4cf44afb
mov dword [eax + 8], 0x40fc4efa
mov dword [eax + 0xc], 0x44f142e4
mov dword [eax + 0x10], 0x58e24693
mov dword [eax + 0x14], 0x5ce85aeb
mov dword [eax + 0x18], 0x50e05ee4
loopne 0x415fa2
loopne 0x415fa2
mov dword [eax + 0x1c], 0x54ad52ef
mov dword [eax + 0x20], 0x28df56e1
mov dword [eax + 0x24], 0x2c2b2a9d
xor eax, eax
mov edi, dword [esi + 0x20]
nop
nop
nop
nop
movzx ebx, byte [edi + eax]
lea ecx, [eax + 0x4e5b189d]
mov edx, 0xb1a4e762
sub edx, eax
and edx, 0xa000c223
and ecx, 0x4a4a085c
or ecx, edx
xor ecx, 0xa411d2a3
mov dword [0xbaa411d2], eax
bound eax, qword [eax]
add byte [eax], al
mov dword [0xbaa411d2], eax
bound eax, qword [eax]
add byte [eax], al
sub edx, eax
xor edx, ecx
and edx, ebx
xor edx, ecx
mov ecx, edx
and ecx, 1
or edx, 1
add edx, ecx
add dl, 0x17
mov byte [edi + eax], dl
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, 0x28
jb 0x415f70
mov edx, dword [esi + 0x128]
movzx ecx, word [edx]
mov eax, dword [esi + 0xbc]
test cx, cx
je 0x416001
add edx, 2
mov eax, dword [esi + 0xbc]
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 0x415ff0
mov word [eax], 0
mov edi, dword [esi + 0x20]
movzx ecx, word [edi]
test cx, cx
mov ebx, dword [esi + 0xc]
mov edx, dword [esi + 0x68]
je 0x416031
add edi, 2
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edi]
add edi, 2
test cx, cx
jne 0x416020
mov word [eax], 0
mov ecx, dword [ebp + 8]
push dword [edx]
push dword [esi]
mov edi, dword [esi + 0xbc]
push edi
call fcn.004097d0
jmp dword [0x4425fc]
les eax, [edi + edi*8]
and eax, 0x442604
jmp dword [0x442604]
add al, 0x89
invalid
mov dword [ecx + 4], 0xe834d62a
mov dword [ecx + 8], 0xec17ea08
mov dword [ecx + 0xc], 0xe03ceecd
mov dword [ecx + 0x10], 0xe402e215
mov dword [ecx + 0x14], 0xf802e611
mov word [ecx + 0x18], 0xfaf9
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ecx, byte [ecx + eax]
mov ebx, eax
and ebx, 7
xor ebx, 0x6611f1e7
mov edx, eax
and edx, 0x18
sub edx, ebx
mov ebx, ecx
and ebx, edx
add ebx, ebx
sub edx, ebx
add dl, cl
add dl, 0x38
mov ecx, dword [esi + 8]
mov byte [ecx + eax], dl
mov ecx, dword [esi + 8]
inc eax
cmp eax, 0x1a
jne 0x416140
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 8]
movzx edx, word [ecx]
mov eax, edi
test dx, dx
je 0x4161a1
add ecx, 2
mov eax, edi
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], dx
add eax, 2
movzx edx, word [ecx]
add ecx, 2
test dx, dx
jne 0x416190
mov word [eax], 0
mov edx, dword [esi + 8]
movzx ecx, word [edx]
test cx, cx
mov ebx, dword [esi + 0x48]
je 0x4161d1
add edx, 2
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 0x4161c0
mov word [eax], 0
push 0x60
push 3
push 0x120089
push ebx
push edi
call fcn.0043d5a0
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x442614]
mov ecx, ebx
add cl, 0x89
xor cl, byte [esi + ebx + 4]
add cl, 0xb8
mov byte [esi + ebx + 4], cl
inc ebx
cmp ebx, 4
jne 0x4162c0
mov ecx, dword [0x4486a8]
test ecx, ecx
leave
test al, 0x86
inc esp
add byte [ebp - 0x74c58b37], al
leave
je 0x41631a
mov edx, dword [esi + 4]
xor edi, edi
mov ebx, dword [0x4486ac]
nop
nop
nop
nop
nop
leave
je 0x41631a
mov edx, dword [esi + 4]
xor edi, edi
mov ebx, dword [0x4486ac]
nop
nop
nop
nop
nop
cmp dword [ebx + edi*8], 0xb430e561
je 0x416300
inc edi
cmp ecx, edi
jne 0x4162f0
jmp 0x41631a
mov ecx, dword [ebx + edi*8 + 4]
cmp ecx, edx
je 0x41631a
push eax
push 4
push ecx
push dword [0x4486b0]
call fcn.0043b5b0
add esp, 0x10
push dword [esi + 0x60]
call fcn.00402670
add esp, 4
mov dword [esi + 0x50], eax
mov ebx, dword [esi + 0xd0]
mov dword [ebx], 0xa3a0bdb2
mov dword [ebx + 4], 0xb0b38bb3
mov dword [ebx + 8], 0xbbb9a37b
mov dword [ebx + 0xc], 0xa8ab93ab
mov dword [ebx + 0x10], 0xabb0bab8
mov word [ebx + 0x14], 0x9bb4
mov byte [ebx + 0x16], 0x13
mov eax, 0xda
mov ecx, ebx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edi, byte [ecx]
lea edx, [eax - 0x770fe400]
or edx, edi
and edi, eax
not edx
or edx, edi
add edx, 0x4780e6d7
mov edi, edx
and edi, 1
xor edx, 1
lea edx, [edx + edi*2]
mov byte [ecx], dl
inc ecx
dec eax
cmp eax, 0xc3
jne 0x416370
push ebx
push dword [esi + 0x50]
call fcn.004029b0
add esp, 8
xor ecx, ecx
test eax, eax
setne cl
mov ebx, dword [esi + 0x6c]
jmp dword [ecx*4 + 0x442654]
mov ebx, eax
nop
nop
mov edi, ecx
inc ecx
cmp byte [edi], 0
jne 0x4163c0
mov edx, edi
sub edx, ebx
lea ecx, [edx + edx*2]
shr ecx, 2
movzx eax, byte [edi - 1]
cmp eax, 0x3d
je 0x4163e0
cmp eax, 0x2e
jne 0x4163e1
dec ecx
movzx eax, byte [ebx + edx - 2]
cmp eax, 0x3d
mov dword [esi + 0xc], edx
je 0x4163f3
cmp eax, 0x2e
jne 0x4163f4
dec ecx
mov dword [esi + 0xd0], ecx
add byte [eax], al
lea eax, [ecx + 1]
push eax
call fcn.00408b60
add esp, 4
mov dword [esi + 0x20], eax
mov dword [esi + 0x14], ebx
cmp edi, ebx
je 0x41650b
add byte [eax], al
add byte [eax], al
xor ecx, ecx
mov ebx, 2
jmp 0x416433
nop
nop
nop
lea eax, [ebx + 4]
add ebx, 2
mov ecx, dword [esi + 8]
cmp ebx, edx
mov ebx, eax
jae 0x41650b
mov dword [esi], ecx
mov edi, dword [esi + 0x14]
movzx eax, byte [edi + ebx - 2]
push eax
call fcn.0041dd50
add esp, 4
mov byte [esi + 8], al
movzx eax, byte [edi + ebx - 1]
push eax
call fcn.0041dd50
add esp, 4
movzx ecx, byte [esi + 8]
shl cl, 2
mov byte [esi + 0x48], al
shr al, 4
and al, 3
or al, cl
mov ecx, dword [esi + 0x20]
mov edx, dword [esi]
mov byte [ecx + edx], al
lea eax, [edx + 1]
mov dword [esi + 8], eax
mov edx, dword [esi + 0xc]
cmp ebx, edx
jae 0x416420
mov eax, dword [esi + 0x14]
movzx eax, byte [eax + ebx]
push eax
call fcn.0041dd50
mov edx, dword [esi + 0xc]
add esp, 4
cmp al, 0x40
je 0x416420
mov byte [esi + 0x68], al
movzx eax, al
mov ecx, eax
not ecx
or ecx, 0x3c
add eax, ecx
inc eax
movzx ecx, byte [esi + 0x48]
shl cl, 4
shr eax, 2
add al, cl
mov edi, dword [esi]
lea ecx, [edi + 2]
dec edi
add cl, byte [ecx + 0x4e8b084e]
and byte [eax - 0x72fec6bc], cl
inc ebx
add dword [ecx], edi
ror byte [edi], 1
adc dword [esi - 1], 0xffffffff
invalid
dec edi
add cl, byte [ecx + 0x4e8b084e]
and byte [eax - 0x72fec6bc], cl
inc ebx
add dword [ecx], edi
ror byte [edi], 1
adc dword [esi - 1], 0xffffffff
dec dword [ebx - 0x49f0ebba]
inc esp
sbb byte [ecx], al
mov eax, dword [esi + 0x14]
movzx eax, byte [eax + ebx + 1]
push eax
call fcn.0041dd50
mov edx, dword [esi + 0xc]
add esp, 4
cmp al, 0x40
movzx ecx, byte [esi + 0x68]
je 0x416420
shl cl, 6
mov ah, al
and ah, cl
add ah, ah
xor cl, al
add cl, ah
mov eax, dword [esi + 0x20]
mov edi, dword [esi]
mov byte [eax + edi + 2], cl
add edi, 3
mov dword [esi + 8], edi
jmp 0x416420
mov eax, dword [esi + 0xd0]
add eax, 0xfffffffb
mov ebx, dword [esi + 0x144]
mov dword [ebx], eax
mov eax, dword [esi + 0x20]
add eax, 5
mov dword [ebx + 4], eax
mov edi, dword [esi + 0xd4]
mov dword [edi], 0
mov dword [edi + 4], 0
push 0x8b2600cb
push dword [0x4486b4]
call fcn.0043ce80
add esp, 8
push edi
push 0
push 0
push 0
push 0
push 0
push ebx
call eax
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x44265c]
push eax
push 4
push ecx
push dword [0x4486b0]
add al, ch
cli
dec edi
add al, byte [eax]
add al, ch
cli
dec edi
add al, byte [eax]
add esp, 0x10
jmp dword [0x44260c]
add byte [eax], al
mov ecx, 4
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edi, byte [edx + eax - 0xfb]
mov edx, ecx
xor edx, eax
and edx, edi
xor edx, eax
add dl, 0x28
mov edi, dword [esi + 0x1c]
mov byte [edi + eax - 0xfb], dl
mov edx, dword [esi + 0x1c]
inc eax
dec ecx
cmp eax, 0x10b
jne 0x416600
movzx ecx, word [ebx]
mov edi, dword [esi]
mov eax, edi
test cx, cx
je 0x416651
add ebx, 2
mov eax, edi
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [ebx]
add ebx, 2
test cx, cx
jne 0x416640
mov word [eax], 0
movzx ecx, word [edx]
test cx, cx
je 0x416683
add edx, 2
mov ebx, dword [esi + 0x6c]
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 0x416670
jmp 0x416686
mov ebx, dword [esi + 0x6c]
insb byte es:[edi], dx
mov word [eax], 0
mov ecx, dword [ebp + 8]
mov eax, dword [esi + 0xd4]
push dword [eax]
push dword [eax + 4]
push edi
call fcn.004097d0
jmp dword [0x442664]
inc ebx
movzx ecx, byte [eax]
inc eax
test cl, cl
je 0x416982
test cl, cl
jns 0x416930
movsx ecx, cl
mov edx, ecx
and edx, 0xf0
cmp edx, 0xe0
cli
loopne 0x41694c
add byte [eax], al
cli
loopne 0x41694c
add byte [eax], al
je 0x416930
mov edx, ecx
xor edx, 0xffffff1f
mov edi, ecx
or edi, 0xe0
and edi, edx
cmp edi, 0xc0
je 0x416930
and ecx, 0xf8
cmp ecx, 0xf0
jne 0x416931
add ebx, 2
jmp 0x416931
mov edi, ebx
inc edi
jns 0x416990
mov eax, 0xffffffff
jmp 0x416997
lea eax, [ebx*2 + 2]
push eax
call fcn.00408b60
add esp, 4
push 0
push dword [esi]
push edi
mov edi, eax
push eax
call fcn.0040b270
add esp, 0x10
mov ecx, dword [esi + 0x118]
lea eax, [ecx + ebx]
add eax, 2
test eax, eax
jns 0x4169d0
mov eax, 0xffffffff
jmp 0x4169d9
add ebx, ecx
lea eax, [ebx*2 + 4]
mov dword [esi + 0x3c], edi
push eax
call fcn.00408b60
add esp, 4
mov edi, eax
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 8]
movzx edx, word [ecx]
mov eax, edi
test dx, dx
je 0x416a11
add ecx, 2
mov eax, edi
nop
nop
nop
nop
mov word [eax], dx
add eax, 2
movzx edx, word [ecx]
add ecx, 2
test dx, dx
jne 0x416a00
mov dword [esi + 8], edi
mov dword [esi + 0x30], eax
mov word [eax], 0
mov edx, dword [esi + 0x124]
mov word [edx], 0xd679
xor ecx, ecx
mov al, 1
nop
nop
nop
nop
nop
mov dword [esi], eax
movzx edi, byte [edx + ecx]
lea ebx, [ecx + 0x3d]
and ebx, edi
mov edx, 0xc2
sub edx, ecx
and edx, edi
mov eax, 0xef4147c2
sub eax, ecx
xor eax, edi
sub eax, edi
add eax, edx
or eax, ebx
mov edx, 0x7a0a3e16
sub edx, eax
mov eax, edx
and eax, 1
xor edx, 1
lea eax, [edx + eax*2]
mov edx, dword [esi + 0x124]
mov byte [edx + ecx], al
mov ecx, 1
test byte [esi], 1
mov eax, 0
jne 0x416a30
movzx eax, word [edx]
mov ecx, dword [esi + 0x30]
mov word [ecx], ax
mov eax, ecx
add eax, 2
mov edi, dword [esi + 0x3c]
movzx ecx, word [edi]
test cx, cx
je 0x416ac0
mov edx, edi
add edx, 2
mov ebx, dword [esi + 8]
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x416aa0
jmp 0x416ac3
mov ebx, dword [esi + 8]
mov word [eax], 0
push dword [esi + 0x11c]
push ebx
call fcn.0043d720
add esp, 8
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x442914]
add dword [eax], edx
sete al
jmp dword [eax*4 + 0x44291c]
nop
nop
nop
mov word [edx], cx
add edx, 2
movzx ecx, word [eax]
add eax, 2
test cx, cx
jne 0x416b10
mov word [edx], 0
mov eax, dword [esi + 0x15c]
mov dword [eax], edi
mov dword [eax + 4], ebx
add al, 0xff
jne 0x416b48
add al, 0xff
jne 0x416b48
push dword [ebp + 0x10]
push eax
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.0041caa0
add esp, 0x14
mov ecx, ebx
mov ebx, eax
jmp dword [0x442924]
add al, 0xff
and eax, 0x44292c
nop
jmp dword [0x44292c]
xchg ebp, eax
sar edi, 0x24
lea edi, [esi + 0x44]
inc esp
inc esp
add byte [ecx], dh
ror byte [edi], 0xb6
rol bh, 0x46
or al, 0
add byte [eax], al
add bh, bh
and al, 0x85
fsub qword [esi]
inc esp
add byte [ebx + 0x76ff0c5e], cl
jbe 0x416bf7
jbe 0x416bf7
call fcn.00402b80
add esp, 4
and bl, 1
mov eax, ebx
lea esp, [ebp - 0xc]
hlt
pop esi
pop edi
pop ebx
pop ebp
ret
hlt
or eax, 0x4486a8
test ecx, ecx
je 0x416c56
mov edx, dword [esi + 4]
xor edi, edi
mov ebx, dword [0x4486ac]
nop
nop
nop
nop
nop
cmp dword [ebx + edi*8], 0x7a5c62dd
je 0x416c20
inc edi
cmp ecx, edi
jne 0x416c10
jmp 0x416c56
mov ecx, dword [ebx + edi*8 + 4]
cmp ecx, edx
je 0x416c56
push 4
push dword [esi + 0x70]
push eax
push 0xfffffffffffffffe
push 0x10
push ecx
push dword [0x4486b0]
call fcn.0043b5b0
add esp, 0x1c
jmp 0x416c56
jmp dword [0x442690]
mov edx, dword [esi + 0x44]
mov dword [edx], 0xe8171610
adc byte [esi], dl
pop ss
call 0x90d22c94
adc byte [esi], dl
pop ss
call 0x90d22c94
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, eax
add cl, 0xfd
xor cl, byte [edx + eax]
add cl, 0x18
mov byte [edx + eax], cl
inc eax
cmp eax, 4
jne 0x416c70
mov ecx, dword [edx]
mov dword [esi + 4], 0xcbcccdce
xor eax, eax
nop
mov edx, eax
add dl, 0x89
xor dl, byte [esi + eax + 4]
add dl, 0xb8
mov byte [esi + eax + 4], dl
inc eax
cmp eax, 4
jne 0x416c90
mov eax, dword [esi + 4]
mov edx, dword [0x4486a8]
test edx, edx
je 0x416c50
xor edi, edi
mov ebx, dword [0x4486ac]
nop
nop
nop
nop
nop
cmp dword [ebx + edi*8], 0x7a5c62dd
je 0x416cd0
inc edi
cmp edx, edi
jne 0x416cc0
jmp 0x416c50
mov edx, dword [ebx + edi*8 + 4]
cmp edx, eax
je 0x416c50
push 4
push dword [esi + 0x70]
push ecx
push 0xfffffffffffffffe
push 0x10
push edx
push dword [0x4486b0]
call fcn.0043b5b0
add esp, 0x1c
jmp dword [0x442690]
add al, 0
add byte [ebx - 0x2776e3a2], cl
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edi, eax
inc eax
cmp byte [edi], 0
jne 0x416d20
mov edx, edi
sub edx, ebx
lea ecx, [edx + edx*2]
shr ecx, 2
movzx eax, byte [edi - 1]
cmp eax, 0x3d
je 0x416d40
cmp eax, 0x2e
jne 0x416d41
dec ecx
movzx eax, byte [ebx + edx - 2]
cmp eax, 0x3d
mov dword [esi + 0x14], edx
je 0x416d53
cmp eax, 0x2e
jne 0x416d54
dec ecx
mov dword [esi + 0x44], ecx
lea eax, [ecx + 1]
push eax
call fcn.00408b60
add esp, 4
mov dword [esi + 0xc], eax
cmp edi, ebx
je 0x416e71
xor ecx, ecx
mov edi, 2
jmp 0x416d93
lea eax, [edi + 4]
add edi, 2
mov ecx, dword [esi + 8]
cmp edi, edx
mov edi, eax
jae 0x416e71
mov dword [esi], ecx
mov ebx, dword [esi + 0x1c]
movzx eax, byte [ebx + edi - 2]
push eax
call fcn.0041dd50
add esp, 4
mov byte [esi + 8], al
movzx eax, byte [ebx + edi - 1]
push eax
call fcn.0041dd50
add esp, 4
movzx ecx, byte [esi + 8]
shl cl, 2
mov byte [esi + 0x20], al
shr al, 4
and al, 3
or al, cl
mov ecx, dword [esi + 0xc]
mov edx, dword [esi]
mov byte [ecx + edx], al
mov eax, dword [esi]
inc eax
mov dword [esi + 8], eax
mov edx, dword [esi + 0x14]
cmp edi, edx
jae 0x416d80
mov eax, dword [esi + 0x1c]
movzx eax, byte [eax + edi]
push eax
call fcn.0041dd50
mov edx, dword [esi + 0x14]
add esp, 4
cmp al, 0x40
je 0x416d80
movzx ecx, al
mov edx, ecx
not edx
or edx, 0x3c
add ecx, edx
inc ecx
movzx edx, byte [esi + 0x20]
shl dl, 4
shr ecx, 2
add cl, dl
mov ebx, dword [esi]
lea edx, [ebx + 2]
mov dword [esi + 8], edx
mov edx, dword [esi + 0xc]
mov byte [edx + ebx + 1], cl
mov edx, dword [esi + 0x14]
lea ecx, [edi + 1]
cmp ecx, edx
jae 0x416d80
push esi
invalid
invalid
invalid
push esi
invalid
mov ecx, dword [esi + 0x1c]
movzx ecx, byte [ecx + edi + 1]
push ecx
mov byte [esi + 0x20], al
call fcn.0041dd50
add byte [eax], al
add byte [eax], al
mov edx, dword [esi + 0x14]
add esp, 4
movzx ecx, byte [esi + 0x20]
cmp al, 0x40
je 0x416d80
shl cl, 6
mov edx, eax
and dl, cl
add dl, dl
xor cl, al
add cl, dl
mov edx, dword [esi + 0x14]
mov eax, dword [esi + 0xc]
mov ebx, dword [esi]
mov byte [eax + ebx + 2], cl
add ebx, 3
mov dword [esi + 8], ebx
jmp 0x416d80
mov ecx, dword [esi + 0x44]
mov eax, ecx
xor eax, 4
and ecx, 0xfffffffb
add ecx, ecx
sub ecx, eax
mov edi, dword [esi + 0x140]
mov dword [edi], ecx
mov eax, dword [esi + 0xc]
add eax, 4
mov dword [edi + 4], eax
mov ebx, dword [esi + 0x5c]
mov dword [ebx], 0
mov dword [ebx + 4], 0
push 0x8b2600cb
push dword [0x4486b4]
call fcn.0043ce80
add esp, 8
push ebx
push 0
push 0
push 0
push 0
push 0
push edi
call eax
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x44269c]
add byte [eax], al
add byte [eax], al
mov edx, dword [esi + 0x18]
mov dword [edx], 0xebeae9ed
mov eax, 0xa8
add byte [eax], al
add byte [eax], al
mov ecx, 0x57
nop
nop
nop
nop
movzx edi, byte [edx + eax - 0xa8]
mov edx, ecx
xor edx, eax
and edx, edi
xor edx, eax
add dl, 0xc0
mov edi, dword [esi + 0x18]
mov byte [edi + eax - 0xa8], dl
mov edx, dword [esi + 0x18]
inc eax
dec ecx
cmp eax, 0xac
jne 0x416f00
mov ecx, dword [edx]
mov dword [esi + 4], 0xcbcccdce
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edx, eax
add dl, 0x89
xor dl, byte [esi + eax + 4]
add dl, 0xb8
mov byte [esi + eax + 4], dl
inc eax
cmp eax, 4
jne 0x416f40
mov eax, dword [esi + 4]
mov edx, dword [0x4486a8]
test edx, edx
je 0x416faa
xor edi, edi
mov ebx, dword [0x4486ac]
nop
nop
nop
nop
nop
cmp dword [ebx + edi*8], 0x7a5c62dd
je 0x416f83
inc edi
cmp edx, edi
jne 0x416f70
mov ebx, dword [esi + 0x5c]
jmp 0x416faa
mov edx, dword [ebx + edi*8 + 4]
cmp edx, eax
mov ebx, dword [esi + 0x5c]
je 0x416faa
push 4
push dword [esi + 0xf4]
push ecx
push 0xfffffffffffffffe
push 0x10
push edx
push dword [0x4486b0]
call fcn.0043b5b0
add esp, 0x1c
not eax
shr eax, 0x1f
mov edi, dword [esi + 0xc0]
jmp dword [eax*4 + 0x4426a4]
ror byte [edi], 0x95
sar edi, 0x24
lea ebp, [esi + 0x6c70044]
add byte [eax], al
add byte [eax], al
jmp 0x4171ce
add dword ds:[eax], esi
mov dword [edi + 8], 0x34bb3245
mov dword [edi + 0xc], 0x48373641
dec eax
dec eax
mov edx, 0xb1
movzx ecx, byte [edi + edx - 0xb1]
mov edi, edx
or edi, ecx
not ecx
mov eax, edx
or eax, ecx
enter 0xffffffffffffc129, 1
stc
enter 0xffffffffffffc129, 1
stc
mov edi, dword [esi + 0xf0]
mov esi, 0xf0
add cl, 0x78
mov byte [edi + edx - 0xb1], cl
inc edx
cmp edx, 0xc1
jne 0x417109
movzx ecx, word [ebx]
mov eax, dword [esi + 8]
test cx, cx
je 0x41715a
add ebx, 2
mov eax, dword [esi + 8]
mov word [eax], cx
mov dword [eax], ecx
add eax, 2
movzx ecx, word [ebx]
add ebx, 2
test cx, cx
jne 0x417149
mov word [eax], 0
movzx ecx, word [edi]
test cx, cx
mov edx, dword [esi + 0x80]
je 0x417186
add edi, 2
mov ebx, dword [esi + 0x5c]
mov word [eax], cx
add eax, 2
movzx ecx, word [edi]
add edi, 2
test cx, cx
jne 0x417173
jmp 0x417189
mov ebx, dword [esi + 0x5c]
mov word [eax], 0
mov ecx, dword [ebp + 8]
push dword [edx]
push dword [esi + 0x14]
mov edi, dword [esi + 8]
push edi
call fcn.004097d0
mov dword [esi], eax
jmp dword [0x4426cc]
push 0xd77a5d9a
push dword [0x44769c]
call fcn.0043ce80
add esp, 8
push dword [ebx + 4]
call eax
mov ebx, dword [esi]
jmp dword [0x4426d4]
in al, 0x88
mov dword [edx + 0xc], 0x8cd98add
mov dword [edx + 0x10], 0x80238e24
mov dword [edx + 0x14], 0x84c282dc
mov dword [edx + 0x18], 0x98df86c6
mov dword [edx + 0x1c], 0x9cc59ac0
mov dword [edx + 0x20], 0x90339ed8
mov dword [edx + 0x24], 0x94cc92c2
mov dword [edx + 0x28], 0xe8c396d3
mov dword [edx + 0x2c], 0xecaaeabe
mov dword [edx + 0x30], 0xe0aaeebf
mov dword [edx + 0x34], 0xe4bee24d
mov dword [edx + 0x38], 0xf844e65c
mov dword [edx + 0x3c], 0xfc44fa4b
mov dword [edx + 0x40], 0xf040fe4e
mov dword [edx + 0x44], 0xf447f257
mov dword [edx + 0x48], 0xc8a0f659
mov dword [edx + 0x4c], 0xcc75ca70
mov dword [edx + 0x50], 0xc070ce69
mov dword [edx + 0x54], 0xc470c276
mov dword [edx + 0x58], 0xd884c669
mov dword [edx + 0x5c], 0xdc69da6c
mov dword [edx + 0x60], 0xd07ade6f
mov dword [edx + 0x64], 0xd467d26f
mov dword [edx + 0x68], 0x2872d683
mov dword [edx + 0x6c], 0x2c982a9b
mov dword [edx + 0x70], 0x20902e94
mov dword [edx + 0x74], 0x248f229f
mov dword [edx + 0x78], 0x38992670
mov dword [edx + 0x7c], 0x3c853a80
mov dword [edx + 0x80], 0x308b3e8e
mov dword [edx + 0x84], 0x348f3290
mov dword [edx + 0x88], 0x89b3689
mov word [edx + 0x8c], 0xa09
xor edi, edi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ecx, byte [edx + edi]
lea eax, [edi - 0x19b19deb]
mov edx, 0x9b19dea
sub edx, edi
and edx, 0x90184a0
and eax, 0xa404235f
or eax, edx
xor eax, ecx
mov ecx, eax
and ecx, 0x55
mov ebx, eax
and ebx, 2
mov edx, ebx
xor edx, 2
imul edx, ecx
or ecx, 2
imul ecx, ebx
mov ebx, eax
xor ebx, 0xa0
and eax, 0x57
add eax, eax
sub ebx, eax
add ebx, edx
mov edx, dword [esi + 0xa8]
add ebx, ecx
add bl, 0x58
mov byte [edx + edi], bl
mov eax, edi
not eax
or eax, 1
add eax, edi
or edi, 1
add edi, eax
inc edi
cmp edi, 0x8e
jb 0x4173d0
movzx ecx, word [edx]
mov eax, dword [esi + 0xc4]
test cx, cx
je 0x417471
add edx, 2
mov eax, dword [esi + 0xc4]
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 0x417460
mov word [eax], 0
mov ebx, dword [esi]
movzx ecx, word [ebx]
test cx, cx
mov edi, dword [esi + 0x24]
mov edx, dword [esi + 0xac]
je 0x4174a1
add ebx, 2
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [ebx]
add ebx, 2
test cx, cx
jne 0x417490
mov word [eax], 0
mov dword [edx], 0xdb34d911
mov dword [edx + 4], 0xdf2add2f
mov dword [edx + 8], 0xe30ee101
mov dword [edx + 0xc], 0xe72ae508
mov dword [edx + 0x10], 0xeb09e907
mov dword [edx + 0x14], 0xef1aed0d
mov dword [edx + 0x18], 0xf31df119
mov dword [edx + 0x1c], 0xf7f6f51a
div dword [ecx]
ror byte [ebx - 0x6f6fd3a2], 0x90
div dword [ecx]
ror byte [ebx - 0x6f6fd3a2], 0x90
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, eax
and cl, 0xf8
mov edx, eax
and dl, 7
sub cl, dl
movzx edx, cl
mov ecx, eax
xor ecx, 0x18
add ecx, eax
add ecx, edx
mov edx, dword [esi + 0xac]
xor cl, byte [edx + eax]
add cl, 0x40
mov byte [edx + eax], cl
inc eax
cmp eax, 0x20
jne 0x4174f0
push dword [esi + 0xf8]
push edx
push dword [esi + 0xc4]
call fcn.00437cb0
add esp, 0xc
xor ecx, ecx
mov dword [esi], eax
test eax, eax
setne cl
mov dword [esi + 0x18], 0
jmp dword [ecx*4 + 0x4426f4]
xor al, 0xb6
int 0x75
invalid
mov ecx, ebx
push 0x2710
push 0
call fcn.00439fa0
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x442754]
mov byte [edx], al
inc edx
movzx eax, byte [ebx]
inc ebx
test al, al
jne 0x4178e0
jmp 0x4178f6
xor eax, eax
cmp dword [esi + 0x18], 0
sete al
mov byte [edx], 0
mov dword [ecx], edx
jmp dword [eax*4 + 0x44272c]
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov dword [esi + 0x14], edx
mov dword [esi], eax
mov ebx, dword [esi]
and ebx, 0xfffffff8
add ebx, edx
movzx edx, byte [ecx]
mov dword [esi + 0xc], edx
xor ebx, 0xd0e1f24
xor edx, ebx
lea eax, [edx + edx]
not eax
add eax, edx
and eax, ebx
mov edi, eax
or edi, 0xfd
inc edi
mov edx, eax
and edx, 0x2d
imul edx, edi
mov edi, eax
and edi, 2
or eax, 2
imul eax, edi
sub edx, eax
add edx, ebx
mov eax, dword [esi]
add dl, byte [esi + 0xc]
add dl, 0xe0
mov byte [ecx], dl
mov edx, dword [esi + 0x14]
inc edx
inc ecx
add eax, 2
cmp eax, 0xa
jne case.0x42b6d4.94
mov eax, dword [esi + 0xcc]
movzx eax, byte [eax]
test al, al
je 0x4179cd
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x24]
mov edx, dword [esi + 0x20]
mov ebx, dword [esi + 0x1c]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [ebx], al
inc ebx
movzx eax, byte [edx]
inc edx
test al, al
jne 0x4179c0
jmp 0x4179d6
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x24]
mov ebx, dword [esi + 0x1c]
mov byte [ebx], 0
mov dword [ecx], ebx
mov ebx, dword [esi + 0x44]
movzx eax, word [ebx + 2]
and eax, 0xfffffffe
push eax
call fcn.00408b60
add esp, 4
mov edx, eax
mov eax, dword [ebx + 4]
movzx ecx, word [eax]
mov dword [esi + 0x18], edx
test cx, cx
je 0x417a21
add eax, 2
mov edx, dword [esi + 0x18]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [edx], cx
add edx, 2
movzx ecx, word [eax]
add eax, 2
test cx, cx
jne 0x417a10
mov word [edx], 0
mov ebx, dword [esi + 0x2c]
push dword [esi + 0x44]
call fcn.00439a70
add esp, 4
jmp 0x41775b
movzx edx, byte [edi + eax]
lea ecx, [eax + 0x58a142a5]
mov edi, 0xa75ebd5a
sub edi, eax
and edi, 0xa3523846
mov ebx, ecx
and ebx, 0x40210009
or ebx, edi
xor ebx, edx
xor ebx, 0xbbd27ae6
lea edi, [eax + 0xa5]
and edi, edx
or edi, ebx
and ecx, edx
sub edi, ecx
mov ecx, edi
and ecx, 0x57
xor edi, 0xd7
lea ecx, [edi + ecx*2]
mov edi, dword [esi + 0x54]
inc cl
mov byte [edi + eax], cl
mov ecx, eax
and ecx, 1
xor eax, 1
lea eax, [eax + ecx*2]
cmp eax, 4
jb 0x417b90
mov eax, dword [esi + 0x84]
mov dword [eax], 0
mov eax, dword [esi + 0x2c]
mov ecx, dword [eax]
mov dword [esi + 4], 0xcbcccdce
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edx, eax
add dl, 0x89
xor dl, byte [esi + eax + 4]
add dl, 0xb8
mov byte [esi + eax + 4], dl
inc eax
cmp eax, 4
jne 0x417c10
mov eax, dword [esi + 4]
mov edx, dword [0x4486a8]
inc esi
add al, 0x8b
adc eax, 0x4486a8
test edx, edx
je 0x417c7c
xor edi, edi
mov ebx, dword [0x4486ac]
nop
nop
nop
nop
nop
cmp dword [ebx + edi*8], 0x4947caf6
je 0x417c53
inc edi
cmp edx, edi
jne 0x417c40
mov edi, dword [esi + 0x54]
jmp 0x417c7c
mov edx, dword [ebx + edi*8 + 4]
cmp edx, eax
mov edi, dword [esi + 0x54]
je 0x417c7c
push dword [esi + 0x84]
push 0
push 0
push 0x2b
push ecx
push 0x14
push edx
push dword [0x4486b0]
call fcn.0043b5b0
add esp, 0x20
mov dword [esi], eax
mov dword [edi], 0x408f8e89
xor ecx, ecx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ebx, byte [edi + ecx]
lea eax, [ecx + 0x58a142a5]
mov edi, 0xa75ebd5a
sub edi, ecx
and edi, 0xa3523846
mov edx, eax
and edx, 0x40210009
or edx, edi
xor edx, ebx
xor edx, 0xbbd27ae6
lea edi, [ecx + 0xa5]
and edi, ebx
or edi, edx
and eax, ebx
sub edi, eax
mov eax, edi
and eax, 0x57
loopne 0x417d23
loopne 0x417d23
xor edi, 0xd7
add byte [eax], al
lea eax, [edi + eax*2]
mov edi, dword [esi + 0x54]
inc al
mov byte [edi + ecx], al
mov eax, ecx
and eax, 1
xor ecx, 1
lea ecx, [ecx + eax*2]
cmp ecx, 4
jb 0x417c90
jmp dword [0x44273c]
or al, byte [esi + 0x1c]
mov dword [esi + 0xc], eax
mov ebx, dword [esi + 0x70]
inc ebx
mov edi, dword [esi + 0x9c]
push edi
call fcn.00402a10
add esp, 4
xor ecx, ecx
cmp ebx, eax
setb cl
jmp dword [ecx*4 + 0x4427cc]
je 0x417dc3
inc eax
xor edx, edx
jmp 0x417d79
inc edx
movzx ecx, byte [eax]
inc eax
test cl, cl
je 0x417dc5
test cl, cl
jns 0x417d70
movsx ecx, cl
mov edi, edx
mov edx, ecx
and edx, 0xf0
cmp edx, 0xe0
mov edx, edi
je 0x417d70
mov edx, ecx
xor edx, 0xffffff1f
mov ebx, ecx
or ebx, 0xe0
and ebx, edx
mov edx, edi
cmp ebx, 0xc0
je 0x417d70
and ecx, 0xf8
cmp ecx, 0xf0
jne 0x417d71
add edx, 2
jmp 0x417d71
xor edx, edx
mov ebx, edx
inc ebx
mov dword [esi + 0x58], edx
jns 0x417dd4
mov eax, 0xffffffff
jmp 0x417ddb
lea eax, [edx*2 + 2]
push eax
call fcn.00408b60
add esp, 4
push 0
push dword [esi]
push ebx
mov dword [esi + 0x20], eax
push eax
call fcn.0040b270
add esp, 0x10
mov edx, dword [esi + 0xe0]
mov dword [edx], 0xaf5cad55
mov dword [edx + 4], 0xb36ab142
mov word [edx + 8], 0xb5b4
mov eax, 0x7c962beb
mov ecx, 0x8369d494
nop
nop
nop
nop
nop
nop
nop
nop
movzx edi, byte [edx + eax - 0x7c962beb]
lea edx, [eax - 0x1f]
and edx, edi
add edx, edx
mov ebx, edi
sub ebx, edx
sub edx, edi
add ebx, eax
add edx, ecx
and edx, 0xe7
and ebx, 0x18
sub ebx, edx
mov edx, dword [esi + 0xe0]
add bl, 0xe8
mov byte [edx + eax - 0x7c962beb], bl
inc eax
dec ecx
cmp eax, 0x7c962bf5
jne 0x417e20
mov eax, edx
mov ecx, 2
mov edx, dword [esi + 0x90]
mov edi, edx
xchg esi, eax
rep movsd dword es:[edi], dword [esi]
xchg esi, eax
lea edi, [edx + 8]
mov eax, dword [esi + 0x98]
mov ecx, 1
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov eax, dword [esi + 0xdc]
add eax, 4
mov dword [esi + 0x34], eax
add dword [esi + 0x58], 0x37
mov eax, dword [esi + 0x38]
add eax, 4
mov dword [esi + 0xa8], eax
mov eax, dword [esi + 0xe8]
lea ecx, [eax + 8]
mov dword [esi + 0x24], ecx
mov ecx, dword [esi + 0x20]
add ecx, 2
mov dword [esi + 0xac], ecx
add eax, 7
mov dword [esi + 0x78], eax
mov eax, dword [esi + 0xd8]
add eax, 4
mov dword [esi + 0x40], eax
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [0x442150]
lea eax, [ecx + ecx]
mov edx, eax
and edx, 0x4000c180
xor edx, 0x6154e5d1
and eax, 0x82a90a22
sub ecx, eax
add ecx, edx
mov eax, ecx
mov edi, 0x66666667
imul edi
mov eax, edx
shr eax, 0x1f
shr edx, 2
add edx, eax
add edx, edx
lea eax, [edx + edx*4]
sub ecx, eax
add ecx, 0x30
mov eax, dword [esi + 0x90]
mov word [eax + 6], cx
call fcn.004092c0
mov ecx, eax
imul edi
mov eax, edx
shr eax, 0x1f
sar edx, 1
add edx, eax
lea eax, [edx + edx*4]
sub ecx, eax
mov eax, ecx
and eax, 1
xor ecx, 1
mov edx, dword [0x442150]
add ecx, edx
add edx, edx
and edx, 0xc2a9cba2
lea eax, [ecx + eax*2]
sub eax, edx
add eax, 0x6154e5d1
mov ecx, eax
or ecx, 0x6154e5d1
mov edx, eax
xor edx, 0x9eab1a2e
add ecx, edx
add ecx, 0x9eab1a2f
mov edx, eax
xor edx, 0x6154e5d1
or eax, 0x9eab1a2e
and eax, edx
mov edx, eax
not edx
lea eax, [eax + edx*2]
inc eax
and eax, ecx
not eax
mov dword [0x442150], eax
mov eax, dword [esi + 0xdc]
mov dword [eax], 0x18
mov eax, dword [esi + 0x34]
mov dword [eax + 0x10], 0
mov dword [eax + 0xc], 0
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov dword [eax], 0
mov dword [esi + 4], 0xcbcccdce
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, eax
add cl, 0x89
xor cl, byte [esi + eax + 4]
add cl, 0xb8
mov byte [esi + eax + 4], cl
inc eax
cmp eax, 4
jne 0x417fd0
mov eax, dword [esi + 4]
mov ecx, dword [0x4486a8]
test ecx, ecx
je 0x418040
xor edx, edx
mov edi, dword [0x4486ac]
nop
nop
nop
nop
nop
cmp dword [edi + edx*8], 0x1f1f7b79
je 0x418010
inc edx
cmp ecx, edx
jne 0x418000
jmp 0x418040
mov ecx, dword [edi + edx*8 + 4]
cmp ecx, eax
je 0x418040
push dword [esi + 0xdc]
push 0x1f003f
push dword [esi + 0x94]
push 0xc
push ecx
push dword [0x4486b0]
call fcn.0043b5b0
add esp, 0x18
nop
nop
nop
nop
nop
nop
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x4427d4]
mov ecx, dword [edi + edx*8 + 4]
cmp ecx, eax
je 0x4180d0
push 1
push 0
push 0x1f0003
push dword [esi + 0xb4]
mov ah, 0
add byte [eax], al
mov ah, 0
add byte [eax], al
push 0x10
push ecx
push dword [0x4486b0]
call fcn.0043b5b0
add esp, 0x1c
nop
nop
nop
nop
nop
nop
nop
nop
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x4427dc]
cmp dword [ebx + edi*8], 0x71d94d17
je 0x418140
inc edi
cmp edx, edi
jne case.0x42b6d4.87
jmp 0x418170
mov edx, dword [ebx + edi*8 + 4]
cmp edx, eax
je 0x418170
push 8
push dword [esi + 0x104]
push 7
push ecx
push 0x10
push edx
push dword [0x4486b0]
call fcn.0043b5b0
add esp, 0x1c
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
not eax
shr eax, 0x1f
mov ebx, dword [esi + 0xb0]
jmp dword [eax*4 + 0x4427e4]
movzx edi, byte [edx + eax - 0xbf]
mov edx, ecx
xor edx, eax
and edx, edi
xor edx, eax
add dl, 8
mov edi, dword [esi + 0xb8]
mov byte [edi + eax - 0xbf], dl
mov edx, dword [esi + 0xb8]
inc eax
dec ecx
cmp eax, 0xc4
jne 0x4181a0
mov eax, dword [esi + 0x10]
mov eax, dword [eax]
movzx ecx, byte [edx]
test cl, cl
je 0x4181eb
mov edx, dword [esi + 0x4c]
nop
nop
mov byte [eax], cl
inc eax
movzx ecx, byte [edx]
inc edx
test cl, cl
jne 0x4181e0
mov byte [eax], 0
mov ecx, dword [esi + 0x10]
mov dword [ecx], eax
mov eax, 0xfffffffe
mov ecx, dword [esi + 0x18]
dec esi
sbb byte [eax - 0x6f6f6f70], dl
dec esi
sbb byte [eax - 0x6f6f6f70], dl
cmp word [ecx + eax + 2], 0
lea eax, [eax + 2]
jne 0x418200
sar eax, 1
add eax, dword [esi + 0x58]
jns 0x418219
mov eax, 0xffffffff
jmp 0x41821b
add eax, eax
push eax
call fcn.00408b60
add esp, 4
mov dword [esi + 0x1c], eax
mov word [eax], 0x22
mov dword [ebx], 0xa9c5a7c6
mov dword [ebx + 4], 0xad3cabc7
mov dword [ebx + 8], 0x913faf3c
mov dword [ebx + 0xc], 0x953d9334
mov dword [ebx + 0x10], 0x993d973a
mov dword [ebx + 0x14], 0x9d389bf7
mov dword [ebx + 0x18], 0x81129f37
mov dword [ebx + 0x1c], 0x85278327
mov dword [ebx + 0x20], 0x89278712
mov dword [ebx + 0x24], 0x8d158b18
mov dword [ebx + 0x28], 0xf1928fd3
mov word [ebx + 0x2c], 0xf3f2
xor eax, eax
xor ecx, ecx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edi, eax
and edi, 0x2c
mov edx, ecx
xor edx, 0x16
push ss
push ss
add edx, edi
xor dl, byte [ebx + ecx]
add dl, 0x50
ret 0x8850
adc al, 0xb
inc ecx
ret 0x8850
add eax, 2
cmp ecx, 0x2e
jne 0x418290
mov edi, dword [esi + 0xec]
mov dword [edi], 0x1af918c5
mov dword [edi + 4], 0x1ec01cc6
mov dword [edi + 8], 0x12b4108d
mov dword [edi + 0xc], 0x168a148e
mov dword [edi + 0x10], 0xaac0883
mov dword [edi + 0x14], 0xea90cd6
mov dword [edi + 0x18], 0x2a300aa
mov dword [edi + 0x1c], 0x6a20496
mov dword [edi + 0x20], 0xfa60f8a0
mov dword [edi + 0x24], 0xfe5afc65
mov dword [edi + 0x28], 0xf261f022
mov dword [edi + 0x2c], 0xf667f46c
mov dword [edi + 0x30], 0xea24e863
mov word [edi + 0x34], 0xeceb
mov eax, 0x6516dddf
mov edx, 0x1ae92220
nop
nop
movzx edi, byte [edi + eax - 0x6516dddf]
mov dword [esi], edi
xor edi, eax
or edi, edx
not edi
add edi, edi
lea ecx, [edx - 0x1ae92200]
and ecx, edi
mov ebx, edi
mov edi, dword [esi + 0xec]
not ebx
and ebx, eax
sub ebx, ecx
add bl, byte [esi]
add bl, 8
mov byte [edi + eax - 0x6516dddf], bl
inc eax
dec edx
cmp eax, 0x6516de15
jne 0x418320
mov eax, dword [esi + 0x1c]
add eax, 2
mov ecx, dword [esi + 0x18]
movzx ecx, word [ecx]
test cx, cx
je 0x418391
mov edx, dword [esi + 0x68]
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 0x418380
mov word [eax], 0
movzx ecx, word [edi]
test cx, cx
je 0x4183c3
mov edx, dword [esi + 0x88]
mov edi, dword [esi + 0xb0]
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x4183b0
jmp 0x4183c9
mov edi, dword [esi + 0xb0]
mov word [eax], 0
mov ecx, dword [esi + 0x90]
movzx ecx, word [ecx]
test cx, cx
je 0x4183f1
mov edx, dword [esi + 0x6c]
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x4183e0
mov word [eax], 0
movzx ecx, word [edi]
test cx, cx
je 0x418421
invalid
and ecx, dword [ebx + 0xa096]
add byte [eax - 0x6f6f6f70], dl
mov edx, dword [esi + 0xa0]
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 0x418410
mov word [eax], 0
mov ecx, dword [esi + 0x20]
movzx ecx, word [ecx]
test cx, cx
je 0x418451
invalid
and byte [ebx + 0xac96], cl
add byte [eax - 0x6f6f6f70], dl
nop
mov edx, dword [esi + 0xac]
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 0x418440
mov dword [eax], 0x22
mov eax, dword [esi + 0x40]
mov dword [eax + 0x3c], 0
mov dword [eax + 0x38], 0
mov dword [eax + 0x34], 0
mov dword [eax + 0x30], 0
mov dword [eax + 0x2c], 0
mov dword [eax + 0x28], 0
mov dword [eax + 0x24], 0
mov dword [eax + 0x20], 0
mov dword [eax + 0x1c], 0
mov dword [eax + 0x18], 0
mov dword [eax + 0x14], 0
mov dword [eax + 0x10], 0
mov dword [eax + 0xc], 0
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov dword [eax], 0
mov eax, dword [esi + 0xd8]
mov dword [eax], 0x44
xor eax, eax
mov ecx, dword [esi + 0x38]
cmp dword [ecx], 0
add bh, al
inc eax
adc byte [eax], al
add byte [eax], al
add bh, al
inc eax
or al, 0
add byte [eax], al
add bh, al
inc eax
or byte [eax], al
add byte [eax], al
add bh, al
inc eax
add al, 0
add byte [eax], al
add bh, al
add byte [eax], al
add byte [eax], al
add byte [ebx + 0xd886], cl
add bh, al
add byte [eax + eax], al
add byte [ecx], dh
ror byte [ebx + 0x3983384e], 0
setne al
jmp dword [eax*4 + 0x4427ec]
test esp, ebp
daa
inc esp
add byte [ecx], dh
shr bl, 6
jmp 0x4184f1
mov eax, dword [esi + 0xa8]
jmp 0x4184f1
mov edi, dword [esi + 0xd8]
mov dword [edi + 8], eax
inc edi
or byte [eax + 0x7b], ch
xchg byte [edi + 0x75], bl
invalid
inc edi
or byte [eax + 0x7b], ch
xchg byte [edi + 0x75], bl
invalid
jne 0x4184ff
push dword [0x44769c]
xor eax, 0x44769c
call fcn.0043ce80
add esp, 8
mov ebx, dword [esi + 0xa4]
sahf
movsb byte es:[edi], byte [esi]
add byte [eax], al
invalid
push ebx
sahf
movsb byte es:[edi], byte [esi]
add byte [eax], al
add byte [ebx + 0x57], dl
push edi
push edi
push 0
push 0
push 0xc
push 0
push 0
push 0
push dword [esi + 0x1c]
push dword [esi + 0x18]
call eax
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x4427f4]
invalid
add byte [ebx + 0x25ff287e], cl
adc al, 0x28
inc esp
add byte [ebx - 0x74f976fd], cl
xchg byte [eax + eax + 0x88b0000], dl
add byte [eax], al
add byte [ebx + 0x446c708], cl
into
int 0xcc
retf
xor edx, edx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
add byte [eax], al
add byte [ebx + 0x446c708], cl
into
int 0xcc
retf
mov eax, edx
add al, 0x89
xor al, byte [esi + edx + 4]
add al, 0xb8
mov byte [esi + edx + 4], al
inc edx
cmp edx, 4
jne case.0x42b6d4.153
mov edx, dword [0x4486a8]
adc eax, 0x4486a8
test edx, edx
je 0x4185bc
mov edi, dword [esi + 4]
xor ebx, ebx
mov eax, dword [0x4486ac]
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [eax + ebx*8], 0x85917b02
je 0x4185a0
inc ebx
cmp edx, ebx
jne 0x418590
jmp 0x4185bc
mov eax, dword [eax + ebx*8 + 4]
cmp eax, edi
je 0x4185bc
push dword [esi]
push ecx
push 8
push eax
push dword [0x4486b0]
call fcn.0043b5b0
add esp, 0x14
mov eax, dword [esi + 0xa4]
mov eax, dword [eax + 4]
mov dword [esi + 4], 0xcbcccdce
xor ecx, ecx
nop
nop
mov edx, ecx
add dl, 0x89
xor dl, byte [esi + ecx + 4]
add dl, 0xb8
mov byte [esi + ecx + 4], dl
inc ecx
cmp ecx, 4
jne 0x4185d0
mov ecx, dword [0x4486a8]
test ecx, ecx
je 0x418635
mov edx, dword [esi + 4]
xor edi, edi
mov ebx, dword [0x4486ac]
nop
nop
nop
nop
nop
cmp dword [ebx + edi*8], 0x4d507eb0
je 0x418610
inc edi
cmp ecx, edi
jne 0x418600
jmp 0x418635
mov ecx, dword [ebx + edi*8 + 4]
cmp ecx, edx
je 0x418635
push 0
push eax
push 8
push ecx
push dword [0x4486b0]
call fcn.0043b5b0
add esp, 0x14
mov eax, dword [esi + 0xa4]
mov eax, dword [eax + 4]
mov dword [esi + 4], 0xcbcccdce
xor ecx, ecx
nop
nop
mov edx, ecx
add dl, 0x89
xor dl, byte [esi + ecx + 4]
add dl, 0xb8
mov byte [esi + ecx + 4], dl
inc ecx
cmp ecx, 4
jne 0x418640
mov ecx, dword [0x4486a8]
test ecx, ecx
je 0x41869a
mov edx, dword [esi + 4]
xor edi, edi
mov ebx, dword [0x4486ac]
nop
nop
nop
nop
nop
cmp dword [ebx + edi*8], 0xb430e561
je 0x418680
inc edi
cmp ecx, edi
jne 0x418670
jmp 0x41869a
mov ecx, dword [ebx + edi*8 + 4]
cmp ecx, edx
je 0x41869a
push eax
push 4
push ecx
push dword [0x4486b0]
call fcn.0043b5b0
add esp, 0x10
mov eax, dword [esi + 0xa4]
mov eax, dword [eax]
mov dword [esi + 4], 0xcbcccdce
xor ecx, ecx
nop
nop
nop
nop
nop
mov edx, ecx
add dl, 0x89
xor dl, byte [esi + ecx + 4]
add dl, 0xb8
mov byte [esi + ecx + 4], dl
inc ecx
cmp ecx, 4
jne 0x4186b0
mov ecx, dword [0x4486a8]
test ecx, ecx
je 0x41870a
mov edx, dword [esi + 4]
xor edi, edi
mov ebx, dword [0x4486ac]
nop
nop
nop
nop
nop
cmp dword [ebx + edi*8], 0xb430e561
je 0x4186f0
inc edi
cmp ecx, edi
jne 0x4186e0
jmp 0x41870a
mov ecx, dword [ebx + edi*8 + 4]
cmp ecx, edx
je 0x41870a
push eax
push 4
push ecx
push dword [0x4486b0]
call fcn.0043b5b0
add esp, 0x10
mov eax, dword [esi + 0x100]
mov dword [eax + 4], 0xffffffff
mov dword [eax], 0xee1e5d00
xor ebx, ebx
nop
mov eax, dword [esi + 0xb4]
mov edi, dword [eax]
mov dword [esi + 4], 0xcbcccdce
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, eax
add cl, 0x89
xor cl, byte [esi + eax + 4]
add cl, 0xb8
mov byte [esi + eax + 4], cl
inc eax
cmp eax, 4
jne 0x418740
mov eax, dword [esi + 4]
mov edx, dword [0x4486a8]
test edx, edx
je 0x4187c0
mov dword [esi], edi
xor edi, edi
mov ecx, dword [0x4486ac]
nop
nop
nop
cmp dword [ecx + edi*8], 0x7fc6ca61
je 0x418780
inc edi
cmp edx, edi
jne 0x418770
jmp 0x4187c0
mov ecx, dword [ecx + edi*8 + 4]
cmp ecx, eax
je 0x4187c0
push dword [esi + 0x100]
push dword [esi + 0xe4]
push dword [esi + 0x158]
push dword [esi + 0x114]
push dword [esi]
push 0x14
push ecx
push dword [0x4486b0]
call fcn.0043b5b0
add esp, 0x20
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp eax, 0x102
setne cl
mov edx, dword [esi + 0xe4]
or eax, dword [edx]
setns al
and al, cl
movzx eax, al
mov edi, dword [esi + 0x28]
jmp dword [eax*4 + 0x4427fc]
inc eax
add al, 0xff
invalid
mov ah, 0xb3
inc edi
inc esi
add al, 0xce
int 0xcc
retf
or byte [eax - 1], dl
xor eax, 0x4486b0
call fcn.0043b5b0
add byte [ebx + 0x56e914c4], al
invalid
invalid
invalid
add byte [ebx + 0x56e914c4], al
invalid
rcl byte [eax - 0x6f6f6f70], 0x90
nop
nop
nop
nop
nop
nop
nop
nop
lea ecx, [eax + eax]
mov edi, ecx
and edi, 8
mov edx, eax
xor edx, 0x1c
add edx, edi
mov edi, dword [esi + 0x8c]
xor dl, byte [edi + eax]
add dl, 0x20
mov edi, dword [esi + 0x8c]
mov byte [edi + eax], dl
mov edx, dword [esi + 0x8c]
xor eax, 0x8129cecd
and ecx, 0xa
add eax, ecx
add eax, 0x7ed63134
cmp eax, 5
jb 0x4188f0
mov eax, dword [esi + 0x10]
mov eax, dword [eax]
movzx ecx, byte [edx]
test cl, cl
je 0x41894d
mov edx, dword [esi + 0x64]
mov edi, dword [esi + 0x28]
mov byte [eax], cl
inc eax
movzx ecx, byte [edx]
inc edx
test cl, cl
jne 0x418940
jmp 0x418950
mov edi, dword [esi + 0x28]
mov byte [eax], 0
mov ecx, dword [esi + 0x10]
mov dword [ecx], eax
jmp dword [0x442814]
mov edx, 0x4f
movzx ebx, byte [edi + edx - 0x4f]
mov dword [esi], ebx
mov dh, 0x5c
pop ss
mov cl, 0x89
push ds
and ebx, edx
mov eax, ebx
or al, 0xfd
inc al
mov ecx, ebx
and cl, 0x5d
mul cl
mov ecx, eax
add cl, byte [esi]
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, edx
add al, 0x88
mov byte [edi + edx - 0x4f], al
inc esp
pop ss
mov cl, 0x42
inc esp
pop ss
mov cl, 0x42
cmp edx, 0x57
jne 0x418970
mov eax, dword [esi + 0x10]
mov eax, dword [eax]
movzx ecx, byte [edi]
test cl, cl
je 0x4189cb
mov edx, dword [esi + 0x54]
nop
nop
nop
nop
nop
nop
nop
mov byte [eax], cl
inc eax
movzx ecx, byte [edx]
inc edx
test cl, cl
jne 0x4189c0
mov byte [eax], 0
mov edi, dword [esi + 0x10]
mov dword [edi], eax
push 0x72da438b
push dword [0x44769c]
pushfd
jbe 0x418a21
add al, ch
popfd
inc esp
add al, byte [eax]
pushfd
jbe 0x418a21
add al, ch
popfd
inc esp
add al, byte [eax]
add esp, 8
call eax
mov ecx, eax
mov eax, dword [esi + 0xe8]
mov byte [eax + 8], 0
test ecx, ecx
je 0x418a88
cmp ecx, 0x100
jb 0x418a99
mov ebx, dword [esi + 0x24]
mov edx, ecx
nop
nop
nop
mov dword [esi + 8], edx
mov dword [esi], ebx
movzx ebx, cl
mov eax, ecx
and eax, 0xfd
mov edx, ebx
xor edx, 0xfffffffd
or edx, eax
not edx
imul edx, eax
mov edi, ebx
sub ebx, eax
xor edi, 2
add ebx, edi
mov dword [esi + 0x30], ecx
and ecx, 2
mov eax, ecx
not eax
and eax, ebx
mov edi, ebx
not edi
xlatb
xlatb
and edi, ecx
imul edi, eax
mov eax, ebx
and eax, ecx
or ebx, ecx
imul ebx, eax
add edi, edx
mov edx, dword [esi + 8]
movzx eax, word [ebx + edi + 0x43f385]
mov ebx, dword [esi]
mov word [ebx - 2], ax
add ebx, 0xfffffffe
shr edx, 8
cmp dword [esi + 0x30], 0xffff
mov ecx, edx
ja 0x418a10
cmp edx, 0xf
ja 0x418aa3
movzx eax, byte [edx + 0x43fb8c]
mov byte [ebx - 1], al
dec ebx
jmp 0x418abc
mov ecx, dword [esi + 0x78]
mov byte [ecx], 0x30
mov edx, dword [edi]
mov al, 0x30
mov ebx, ecx
mov edi, dword [esi + 0x28]
jmp 0x418ac8
mov ebx, dword [esi + 0x24]
mov edx, ecx
cmp edx, 0xf
jbe 0x418a7b
movzx eax, byte [edx + edx + 0x43f386]
mov byte [ebx - 1], al
movzx eax, byte [edx + edx + 0x43f385]
mov byte [ebx - 2], al
add ebx, 0xfffffffe
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x28]
mov edx, dword [ecx]
test al, al
je 0x418adb
inc ebx
nop
nop
nop
nop
nop
nop
nop
mov byte [edx], al
inc edx
movzx eax, byte [ebx]
inc ebx
test al, al
jne 0x418ad0
mov byte [edx], 0
mov eax, dword [esi + 0x10]
mov dword [eax], edx
jmp 0x418afe
mov byte [edx], 0
mov eax, dword [esi + 0x10]
inc esi
adc byte [ecx + 0x1c25ff10], cl
invalid
inc esp
invalid
inc esi
adc byte [ecx + 0x1c25ff10], cl
sub byte [eax + eax - 0x39], al
pop es
int 0x89
mov bh, byte [edx - 0x34fbb839]
int1
int 0x2e
mov dword [edi], 0xba8a89cd
mov dword [edi + 4], 0x2ecdf1cb
mov edx, 0x4f
movzx edi, byte [edi + edx - 0x4f]
mov ebx, edi
and ebx, edx
mov eax, ebx
or al, 0xfd
inc al
mov ecx, ebx
and cl, 0x5d
mul cl
mov ecx, eax
mov eax, edi
mov edi, dword [esi + 0x28]
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, edx
add al, 0x88
mov byte [edi + edx - 0x4f], al
inc edx
cmp edx, 0x57
jne 0x418b10
mov eax, dword [esi + 0x10]
mov eax, dword [eax]
movzx ecx, byte [edi]
test cl, cl
je 0x418b6b
mov edx, dword [esi + 0x54]
nop
nop
mov byte [eax], cl
inc eax
movzx ecx, byte [edx]
inc edx
test cl, cl
jne 0x418b60
mov byte [eax], 0
mov edi, dword [esi + 0x10]
mov dword [edi], eax
push 0x72da438b
push dword [0x44769c]
call fcn.0043ce80
add esp, 8
call eax
mov ecx, eax
mov eax, dword [esi + 0xe8]
mov byte [eax + 8], 0
test ecx, ecx
je 0x418c30
cmp ecx, 0x100
jb 0x418c50
mov ebx, dword [esi + 0x24]
mov edx, ecx
nop
nop
nop
mov dword [esi + 8], edx
mov dword [esi], ebx
movzx ebx, cl
mov eax, ecx
and eax, 0xfd
mov edx, ebx
xor edx, 0xfffffffd
or edx, eax
not edx
imul edx, eax
mov edi, ebx
sub ebx, eax
xor edi, 2
add ebx, edi
mov dword [esi + 0x30], ecx
and ecx, 2
loope 0x418bdc
loope 0x418bdc
mov eax, ecx
not eax
and eax, ebx
mov edi, ebx
not edi
and edi, ecx
imul edi, eax
mov eax, ebx
and eax, ecx
or ebx, ecx
imul ebx, eax
add edi, edx
mov edx, dword [esi + 8]
movzx eax, word [ebx + edi + 0x43f385]
inc ebx
add byte [ebx + 0x4389661e], cl
inc byte [ebx - 0x153e013d]
or byte [ecx - 0xcf82], al
add byte [eax], al
inc ebx
add byte [ebx + 0x4389661e], cl
inc byte [ebx - 0x153e013d]
or byte [ecx - 0xcf82], al
add byte [eax], al
mov ecx, edx
ja 0x418bb0
cmp edx, 0xf
ja 0x418c5a
movzx eax, byte [edx + 0x43fb8c]
mov byte [ebx - 1], al
dec ebx
jmp case.0x42b6d4.140
mov ecx, dword [esi + 0x78]
mov byte [ecx], 0x30
mov edx, dword [edi]
mov al, 0x30
mov ebx, ecx
mov edi, dword [esi + 0x28]
jmp 0x418c83
mov ebx, dword [esi + 0x24]
mov edx, ecx
cmp edx, 0xf
jbe 0x418c1b
movzx eax, byte [edx + edx + 0x43f386]
mov byte [ebx - 1], al
movzx eax, byte [edx + edx + 0x43f385]
mov byte [ebx - 2], al
add ebx, 0xfffffffe
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x28]
mov edx, dword [ecx]
test al, al
ror byte [edi], 0x84
insd dword es:[edi], dx
invalid
invalid
invalid
ror byte [edi], 0x84
insd dword es:[edi], dx
invalid
inc ebx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [edx], al
inc edx
movzx eax, byte [ebx]
inc ebx
test al, al
jne 0x418c90
jmp 0x418af0
inc esp
add bh, bh
jbe 0x418cc5
call fcn.00408b70
add esp, 4
jmp 0x418cb3
mov eax, dword [esi + 0xb4]
mov eax, dword [eax]
mov dword [esi + 4], 0xcbcccdce
xor ecx, ecx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edx, ecx
add dl, 0x89
xor dl, byte [esi + ecx + 4]
add dl, 0xb8
mov byte [esi + ecx + 4], dl
inc ecx
cmp ecx, 4
jne 0x418cd0
mov ecx, dword [0x4486a8]
test ecx, ecx
je 0x418d30
mov edx, dword [esi + 4]
xor edi, edi
mov ebx, dword [0x4486ac]
nop
nop
nop
nop
nop
cmp dword [ebx + edi*8], 0xb430e561
je 0x418d10
inc edi
cmp ecx, edi
jne 0x418d00
jmp 0x418d30
mov ecx, dword [ebx + edi*8 + 4]
cmp ecx, edx
je 0x418d30
push eax
push 4
push ecx
push dword [0x4486b0]
call fcn.0043b5b0
add esp, 0x10
nop
nop
nop
nop
nop
nop
mov eax, dword [esi + 0x94]
mov eax, dword [eax]
mov dword [esi + 4], 0xcbcccdce
xor ecx, ecx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edx, ecx
add dl, 0x89
xor dl, byte [esi + ecx + 4]
add dl, 0xb8
mov byte [esi + ecx + 4], dl
inc ecx
cmp ecx, 4
jne 0x418d50
mov ecx, dword [0x4486a8]
test ecx, ecx
je 0x418db0
mov edx, dword [esi + 4]
xor edi, edi
mov ebx, dword [0x4486ac]
nop
nop
nop
nop
nop
cmp dword [ebx + edi*8], 0xb430e561
je 0x418d90
inc edi
cmp ecx, edi
jne 0x418d80
jmp 0x418db0
mov ecx, dword [ebx + edi*8 + 4]
cmp ecx, edx
je 0x418db0
push eax
push 4
push ecx
push dword [0x4486b0]
call fcn.0043b5b0
add esp, 0x10
nop
nop
nop
nop
nop
nop
xor edi, edi
push dword [ebp + 0xc]
push dword [esi + 0x20]
push dword [esi + 0x90]
push dword [esi + 0x10]
push dword [ebp + 8]
call fcn.0041b550
add esp, 0x14
mov byte [esi + 0x1c], al
mov ebx, dword [esi + 0x2c]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, ebx
mov eax, dword [ebp + 0xc]
push dword [eax + 0xc]
call fcn.00439aa0
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x44282c]
mov eax, dword [esi + 0x3c]
mov dword [eax], 0x43714195
mov byte [eax + 4], 0xe3
xor ebx, ebx
mov edx, 0x48
nop
nop
nop
nop
nop
nop
nop
nop
mov dword [esi], edx
movzx eax, byte [eax + ebx]
mov dword [esi + 8], eax
mov ecx, ebx
xor ecx, 0x60be2f57
mov eax, dword [esi]
lea edx, [eax + ecx]
add edx, 0xffffffb8
and edx, dword [esi + 8]
mov eax, edx
or al, 0xfd
inc al
mov ah, dl
and ah, 0x7d
mul ah
add cl, byte [esi + 8]
add cl, al
mov eax, edx
shr al, 1
and al, 1
or dl, 2
mul dl
mov edx, dword [esi]
add al, al
sub cl, al
movzx eax, cl
add eax, edx
mov ecx, dword [esi + 0x3c]
mov byte [ecx + ebx], al
mov eax, dword [esi + 0x3c]
inc ebx
add edx, 2
cmp ebx, 5
jne 0x418ed0
movzx eax, byte [eax]
test al, al
je 0x418f4d
mov ecx, dword [esi + 0x44]
mov ebx, dword [esi + 0x2c]
mov edx, dword [esi + 0x10]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [edi], al
inc edi
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x418f40
jmp 0x418f53
mov ebx, dword [esi + 0x2c]
mov edx, dword [esi + 0x10]
mov byte [edi], 0
mov dword [edx], edi
mov ecx, ebx
push 0x2710
push 0
call fcn.00439fa0
jmp dword [0x442850]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [edi], al
inc edi
movzx eax, byte [edx]
inc edx
test al, al
jne 0x418ff0
jmp 0x419011
mov byte [edi], 0
mov eax, dword [esi + 0x10]
mov dword [eax], edi
push 0x2710
push 0
call fcn.00439fa0
jmp 0x418eb4
or al, 0xc7
add al, byte [edi + 0x2c]
insb byte es:[edi], dx
mov dword cs:[edx + 4], 0x22b120bf
mov dword [edx + 8], 0x26bc24bf
mov dword [edx + 0xc], 0x5a385844
mov dword [edx + 0x10], 0x5ec45ccf
mov dword [edx + 0x14], 0x52cf50c0
mov dword [edx + 0x18], 0x5655543f
xor ecx, ecx
nop
nop
nop
mov edx, ecx
xor edx, 0x4c
mov edi, ecx
or edi, 0xb3
and edx, edi
add edx, edi
mov edi, dword [esi + 0x4c]
xor dl, byte [edi + ecx]
add dl, 0x68
mov edi, dword [esi + 0x4c]
mov byte [edi + ecx], dl
mov edx, dword [esi + 0x4c]
inc ecx
cmp ecx, 0x1c
jne 0x419310
add ebx, 2
mov edi, ebx
mov ebx, dword [esi + 8]
movzx ecx, word [ebx + 2]
test cx, cx
je 0x41935e
add ebx, 4
mov word [edi], cx
add edi, 2
movzx ecx, word [ebx]
add ebx, 2
test cx, cx
jne 0x41934d
mov word [edi], 0
movzx ecx, word [edx]
test cx, cx
mov ebx, edi
je 0x419386
add edx, 2
mov edi, dword [esi + 0x64]
mov word [ebx], cx
add ebx, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x419373
jmp 0x419389
mov edi, dword [esi + 0x64]
mov word [ebx], 0
movzx ecx, word [eax]
test cx, cx
je 0x4193af
add eax, 2
mov edx, dword [esi + 0x40]
mov word [ebx], cx
add ebx, 2
movzx ecx, word [eax]
add eax, 2
test cx, cx
jne 0x41939c
jmp 0x4193b2
mov edx, dword [esi + 0x40]
mov word [ebx], 0
mov eax, dword [esi + 0x34]
sub ebx, eax
sar ebx, 1
push edx
push 0
push 0
mov dword [esi + 8], ebx
push ebx
push eax
push 0
call dword [0x4486a4]
mov dword [esi], eax
mov dword [edi], 0xe4a3a282
xor ebx, ebx
xor eax, eax
nop
nop
nop
nop
mov ecx, dword [esi + 0x64]
movzx edi, byte [ecx + eax]
mov ecx, ebx
and ecx, 2
mov edx, eax
xor edx, 0xe1
add edx, ecx
add edx, 0x4a418808
lea ecx, [edi + edi]
not ecx
add ecx, edi
xor ecx, edi
and ecx, edx
xor ecx, edi
mov edx, dword [esi + 0x64]
add cl, 0xb8
mov byte [edx + eax], cl
inc eax
add ebx, 2
cmp eax, 4
jne 0x4193e0
xor eax, eax
mov ecx, dword [esi]
cmp ecx, dword [edx]
sete al
mov ecx, dword [esi + 0x18]
jmp dword [eax*4 + 0x442794]
les eax, [ecx + ecx*4]
ret
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x9e0
push 0x1000
call fcn.00408b60
add esp, 4
mov dword [esp + 0x730], 0x18170bef
mov dword [esp + 0x734], 0x6737e68
mov word [esp + 0x738], 0xce2d
mov esi, 0x1d
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edx, byte [esp + esi + 0x713]
lea ecx, [esi - 0x12735b00]
or ecx, edx
and edx, esi
sub ecx, edx
mov edx, ecx
not edx
and edx, 0xe9
and ecx, 0x16
sub ecx, edx
inc cl
mov byte [esp + esi + 0x713], cl
inc esi
cmp esi, 0x27
jne 0x42b3a0
mov dword [esp + 0x1c], eax
mov eax, dword [0x441014]
mov dword [esp + 4], eax
mov dword [esp + 0x400], 0xe4c6c8ae
mov dword [esp + 0x404], 0x20c0707
mov dword [esp + 0x408], 0xe1c180b
mov dword [esp + 0x40c], 0x1d1d1804
mov word [esp + 0x410], 0xd5ce
mov byte [esp + 0x412], 0xb6
xor eax, eax
nop
mov ecx, eax
add cl, 0x84
xor cl, byte [esp + eax + 0x400]
add cl, 0xe0
mov byte [esp + eax + 0x400], cl
mov ecx, eax
and ecx, 1
xor eax, 1
lea eax, [eax + ecx*2]
cmp eax, 0x13
jb 0x42b420
mov eax, dword [0x441010]
mov dword [esp + 8], eax
mov dword [esp + 0xb8], 0xd9e98a8a
mov dword [esp + 0xbc], 0xdfd18e24
mov dword [esp + 0xc0], 0xf083e8d6
mov dword [esp + 0xc4], 0xc4e786e2
mov dword [esp + 0xc8], 0xddc6c7cc
mov dword [esp + 0xcc], 0xcfc8c1c3
mov dword [esp + 0xd0], 0x97a9c9c3
mov dword [esp + 0xd4], 0x41c2f495
mov dword [esp + 0xd8], 0xb0ae99ef
mov dword [esp + 0xdc], 0xbfb3eeb1
mov dword [esp + 0xe0], 0xe489b1a6
mov dword [esp + 0xe4], 0xa5b2ba85
mov dword [esp + 0xe8], 0xbda6bba4
mov dword [esp + 0xec], 0xa4baa5af
mov dword [esp + 0xf0], 0xb7b2aea1
mov dword [esp + 0xf4], 0x97b5b9b0
mov dword [esp + 0xf8], 0xccd6f09d
mov dword [esp + 0xfc], 0x9d929bb1
mov dword [esp + 0x100], 0xc4d1a180
mov dword [esp + 0x104], 0x849e93a7
mov dword [esp + 0x108], 0xb8dbb09d
mov dword [esp + 0x10c], 0xc1df9d98
mov dword [esp + 0x110], 0xc4c1d2c0
mov dword [esp + 0x114], 0x35edc2c7
mov dword [esp + 0x118], 0x48525629
mov word [esp + 0x11c], 0x2e47
mov byte [esp + 0x11e], 0xf
mov edx, 0x4ea8a999
mov esi, 0x31575667
nop
nop
movzx eax, byte [esp + edx - 0x4ea8a8e1]
lea ecx, [edx - 0x4ea8a8f8]
and ecx, eax
mov ebx, ecx
and ebx, 0xfffffffd
mov edi, ecx
or edi, 0xfffffffd
inc edi
imul edi, ebx
mov ebx, ecx
and ebx, 2
or ecx, 2
imul ecx, ebx
mov ebx, ecx
sub ebx, edi
add edi, eax
sub ebx, eax
add ebx, esi
or ebx, 1
add ebx, edi
sub edi, ecx
lea eax, [edx + edi]
dec eax
sub ebx, ecx
add ebx, edx
add ebx, ebx
mov ecx, ebx
and ecx, eax
or ebx, eax
xor ebx, 1
add ebx, ecx
mov byte [esp + edx - 0x4ea8a8e1], bl
inc edx
dec esi
cmp edx, 0x4ea8aa00
jne 0x42b580
movzx eax, byte [esp + 0xb8]
mov ecx, dword [esp + 0x1c]
mov esi, ecx
test al, al
je 0x42b60b
lea edx, [esp + 0xb9]
mov esi, ecx
nop
nop
nop
nop
nop
mov byte [esi], al
inc esi
movzx eax, byte [edx]
inc edx
test al, al
jne 0x42b600
mov byte [esi], 0
mov ecx, dword [esp + 8]
movzx eax, byte [ecx]
test al, al
je 0x42b62b
inc ecx
nop
nop
nop
nop
nop
nop
mov byte [esi], al
inc esi
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x42b620
mov byte [esi], 0
movzx eax, byte [esp + 0x400]
test al, al
je 0x42b65b
lea ecx, [esp + 0x401]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [esi], al
inc esi
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x42b650
mov byte [esi], 0
mov ecx, dword [esp + 4]
movzx eax, byte [ecx]
test al, al
je 0x42b67b
inc ecx
nop
nop
nop
nop
nop
nop
mov byte [esi], al
inc esi
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x42b670
mov byte [esi], 0
movzx eax, byte [esp + 0x730]
test al, al
je 0x42b6ab
lea ecx, [esp + 0x731]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [esi], al
inc esi
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x42b6a0
mov byte [esi], 0
push 0
call fcn.0043cdf0
add esp, 4
xor ecx, ecx
test eax, eax
setne cl
mov edx, dword [ecx*4 + 0x444480]
mov ecx, 0xce701958
xor ecx, dword [case.0x42b6d4.2]
add ecx, edx
inc ecx
jmp ecx