Function at 0x42f516
Capabilities:
Encode data using xor

Disassembly:
mov edi, dword [esp + 0x7c]
mov ecx, edi
call fcn.0042f950
push edi
call fcn.0040c740
add esp, 4
xor edx, edx
jmp dword [0x44f0b0]
push dword [esp + 0x6c]
call fcn.0040c740
xor edx, edx
add esp, 4
jmp case.0x42d23b.13
mov dword [esp + 0x1c], 0x5d685679
mov dword [esp + 0x20], 0x62506059
mov dword [esp + 0x24], 0x5d6d711d
mov dword [esp + 0x28], 0x81b6456
mov dword [esp + 0x2c], 0x26151828
mov dword [esp + 0x30], 0x101f7061
mov dword [esp + 0x34], 0x2528202d
mov word [esp + 0x38], 0xbb25
mov dword [esp + 0x3a], 0
mov eax, 0xb1
mov ecx, 0x4e
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx esi, byte [esp + eax - 0x95]
mov edx, eax
xor edx, ecx
and edx, esi
xor edx, ecx
mov bl, 0x8a
sub bl, dl
mov byte [esp + eax - 0x95], bl
inc eax
dec ecx
cmp eax, 0xd3
jne case.default.0x42d23b
mov ecx, dword [esp + 0x6c]
lea eax, [esp + 0x1c]
push eax
call fcn.0042f7e0
xor ecx, ecx
test eax, eax
setne cl
xor esi, esi
jmp dword [ecx*4 + 0x44efb0]
push dword [esp + 0x74]
call fcn.0040c740
add esp, 4
mov eax, ebx
and al, 1
movzx ecx, al
mov eax, ebx
jmp dword [ecx*4 + 0x44f0c0]
mov eax, dword [esp + 4]
mov byte [eax], 0
mov dword [esp + 0x1c], 0xc3c6c9b9
mov dword [esp + 0x20], 0xffd3cacd
mov dword [esp + 0x24], 0xc0fcc2c9
mov dword [esp + 0x28], 0xf6c6e2bf
mov dword [esp + 0x2c], 0xebb5fce9
mov dword [esp + 0x30], 0xf1fff2f7
mov dword [esp + 0x34], 0xd7d2b3cf
mov dword [esp + 0x38], 0x5dd0
mov edx, 0x96
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edi, byte [esp + edx - 0x7a]
mov ebx, edi
and ebx, edx
mov eax, ebx
or al, 0xfd
inc al
mov ecx, ebx
and cl, 0xbd
mul cl
mov ecx, eax
mov eax, edi
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, 0x12
mov byte [esp + edx - 0x7a], al
inc edx
cmp edx, 0xb6
jne 0x42d530
mov eax, dword [esp + 4]
mov edi, dword [esp + 8]
sub eax, edi
mov ecx, dword [esp + 0xec]
push eax
push edi
lea eax, [esp + 0x24]
push eax
call fcn.0040d350
jmp dword [0x44f0c8]
push edi
mov edi, eax
call fcn.0040c740
mov eax, edi
add esp, 4
and al, 1
test esi, esi
jne 0x42da84
jmp fcn.0042dab3
mov eax, ebx
and al, 1
movzx ecx, al
mov eax, ebx
jmp dword [ecx*4 + 0x44f0c0]
jmp dword [0x44f0c8]
mov dword [esp + 0xc], 0x430e41fc
mov dword [esp + 0x10], 0x47e545eb
mov dword [esp + 0x14], 0x4be649e9
mov dword [esp + 0x18], 0x4ffd4d2c
mov dword [esp + 0x1c], 0xb31db124
mov dword [esp + 0x20], 0xb717b526
mov dword [esp + 0x24], 0xbb1fb91f
mov dword [esp + 0x28], 0xbf12bd00
mov dword [esp + 0x2c], 0xa334a105
mov dword [esp + 0x30], 0xa70aa501
mov dword [esp + 0x34], 0xab08a90c
mov dword [esp + 0x38], 0xadac
xor eax, eax
mov edx, dword [esp + 0x40]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, eax
add cl, 0x70
xor cl, byte [esp + eax + 0xc]
add cl, 0xd0
mov byte [esp + eax + 0xc], cl
inc eax
cmp eax, 0x30
jne 0x42df70
movzx ecx, word [edx]
mov eax, ebp
test cx, cx
je 0x42dfb1
add edx, 2
mov eax, ebp
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 0x42dfa0
mov word [eax], 0
movzx ecx, word [esp + 0xc]
test cx, cx
je 0x42dfe1
lea edx, [esp + 0xe]
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 0x42dfd0
mov word [eax], 0
lea eax, [esi + 0x12]
cmp dword [esp + 0x48], 0xfffffff7
jge 0x42dff5
mov eax, 0xffffffff
push eax
call fcn.0040c730
add esp, 4
mov dword [esp + 0xc], 0xe112e7d5
mov dword [esp + 0x10], 0xfd6ce31f
mov dword [esp + 0x14], 0xf90aff03
mov dword [esp + 0x18], 0xf518fb04
mov word [esp + 0x1c], 0xf7f4
lea ecx, [esp + 0xc]
mov byte [ecx + 0x16], 0
mov dword [ecx + 0x12], 0
mov ecx, 0x97a8eca9
nop
nop
nop
nop
nop
nop
nop
movzx edx, byte [esp + ecx + 0x68571363]
xor edx, ecx
mov edi, edx
and edi, 0x32
xor edx, 0xb2
lea edx, [edx + edi*2]
inc dl
mov byte [esp + ecx + 0x68571363], dl
inc ecx
cmp ecx, 0x97a8ecc0
jne 0x42e040
mov edx, dword [esp + 0x40]
movzx ecx, word [edx]
test cx, cx
je 0x42e091
add edx, 2
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 0x42e080
mov word [eax], 0
movzx ecx, word [esp + 0xc]
test cx, cx
je 0x42e0c1
lea edx, [esp + 0xe]
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 0x42e0b0
mov word [eax], 0
jmp case.0x42d23b.107
mov word [ecx], 0
jmp dword [0x44f168]
mov edi, dword [esp + 0x40]
lea ebx, [edi + 2]
lea eax, [esi + 0x12]
mov dword [esp + 0xc], 0x430e41fc
mov dword [esp + 0x10], 0x47e545eb
mov dword [esp + 0x14], 0x4be649e9
mov dword [esp + 0x18], 0x4ffd4d2c
mov dword [esp + 0x1c], 0xb31db124
mov dword [esp + 0x20], 0xb717b526
mov dword [esp + 0x24], 0xbb1fb91f
mov dword [esp + 0x28], 0xbf12bd00
mov dword [esp + 0x2c], 0xa334a105
mov dword [esp + 0x30], 0xa70aa501
mov dword [esp + 0x34], 0xab08a90c
mov dword [esp + 0x38], 0xadac
xor ecx, ecx
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edx, ecx
add dl, 0x70
xor dl, byte [esp + ecx + 0xc]
add dl, 0xd0
mov byte [esp + ecx + 0xc], dl
inc ecx
cmp ecx, 0x30
jne 0x42e150
movzx edx, word [edi]
mov ecx, ebp
test dx, dx
je 0x42e191
mov edi, ebx
mov ecx, ebp
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [ecx], dx
add ecx, 2
movzx edx, word [edi]
add edi, 2
test dx, dx
jne 0x42e180
mov word [ecx], 0
movzx edx, word [esp + 0xc]
test dx, dx
je 0x42e1c1
lea edi, [esp + 0xe]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [ecx], dx
add ecx, 2
movzx edx, word [edi]
add edi, 2
test dx, dx
jne 0x42e1b0
mov word [ecx], 0
cmp dword [esp + 0x48], 0xfffffff7
jge 0x42e1d2
mov eax, 0xffffffff
push eax
call fcn.0040c730
add esp, 4
mov dword [esp + 0xc], 0xe112e7d5
mov dword [esp + 0x10], 0xfd6ce31f
mov dword [esp + 0x14], 0xf90aff03
mov dword [esp + 0x18], 0xf518fb04
mov word [esp + 0x1c], 0xf7f4
lea ecx, [esp + 0xc]
mov byte [ecx + 0x16], 0
mov dword [ecx + 0x12], 0
mov ecx, 0x97a8eca9
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edx, byte [esp + ecx + 0x68571363]
xor edx, ecx
mov edi, edx
and edi, 0x32
xor edx, 0xb2
lea edx, [edx + edi*2]
inc dl
mov byte [esp + ecx + 0x68571363], dl
inc ecx
cmp ecx, 0x97a8ecc0
jne 0x42e220
mov ecx, dword [esp + 0x40]
movzx edx, word [ecx]
mov ecx, eax
test dx, dx
je 0x42e271
mov ecx, eax
nop
nop
nop
nop
nop
nop
mov word [ecx], dx
add ecx, 2
movzx edx, word [ebx]
add ebx, 2
test dx, dx
jne 0x42e260
mov word [ecx], 0
movzx edx, word [esp + 0xc]
test dx, dx
je 0x42e0d0
lea edi, [esp + 0xe]
nop
nop
nop
nop
nop
nop
nop
nop
mov word [ecx], dx
add ecx, 2
movzx edx, word [edi]
add edi, 2
test dx, dx
jne 0x42e290
jmp 0x42e0d0
mov dword [esp + 0x68], 0xf7f6f98e
mov ecx, 0x56
mov edx, 0x29
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx esi, byte [esp + ecx + 0x12]
mov edi, edx
and edi, 0x21
mov ebx, ecx
and ebx, 0x4e
or ebx, edi
xor ebx, 0x31
and ebx, esi
lea edi, [ecx - 0x5611e800]
or edi, esi
xor edi, ebx
add edi, 0xae598651
mov esi, edi
and esi, 1
xor edi, 1
lea ebx, [edi + esi*2]
mov byte [esp + ecx + 0x12], bl
inc ecx
dec edx
cmp ecx, 0x5a
jne 0x42e2d0
lea ecx, [esp + 0x68]
push 0
push 0
push 0xc00000
push ecx
push dword [esp + 0x14]
mov esi, eax
push eax
push dword [esp + 0x11c]
call fcn.004268d0
add esp, 0x1c
mov ecx, dword [esp + 0x50]
and cl, 1
or cl, al
mov dword [esp + 0x50], ecx
mov ebp, dword [esp + 0x3c]
jmp dword [0x44f170]
push esi
call fcn.0040c740
add esp, 4
jmp dword [0x44f178]
jmp dword [0x44f178]
push dword [esp + 4]
call fcn.0040c740
add esp, 4
mov eax, dword [case.0x42d23b.117]
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
mov eax, 0xffffffff
test edi, edi
js 0x42e39b
mov eax, ebx
push eax
call fcn.0040c730
add esp, 4
mov edx, eax
mov eax, dword [esp + 0x3c]
movzx eax, word [eax]
mov ebp, edx
test ax, ax
je 0x42e3d2
mov ecx, dword [esp + 0x54]
mov ebp, edx
nop
nop
nop
nop
nop
nop
mov word [ebp], ax
add ebp, 2
movzx eax, word [ecx]
add ecx, 2
test ax, ax
jne 0x42e3c0
mov word [ebp], 0x5c
jmp dword [0x44f158]
mov dword [esp + 4], edx
add ebp, 2
jmp dword [0x44f160]
mov eax, 0xffffffff
test edi, edi
mov ebp, dword [esp + 0x3c]
js 0x42e3ff
mov eax, ebx
push eax
call fcn.0040c730
add esp, 4
movzx ecx, word [ebp]
test cx, cx
je 0x42e431
mov edx, dword [esp + 0x54]
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 0x42e420
mov word [eax], 0x5c
jmp case.0x42d23b.103
mov dword [esp + 0x88], ecx
mov edi, dword [esp + ecx + 0x8c]
mov esi, 0xfffffffe
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp word [edi + esi + 2], 0
lea esi, [esi + 2]
jne 0x42e460
mov edx, esi
sar edx, 1
mov eax, dword [esp + 0x64]
lea ecx, [edx + eax]
mov dword [esp + 0x48], edx
add edx, eax
add edx, 0xd
lea eax, [ecx*2 + 0x1a]
test edx, edx
jns 0x42e48f
mov eax, 0xffffffff
mov dword [esp + 0x40], edi
push eax
call fcn.0040c730
add esp, 4
movzx edi, word [ebp]
mov edx, eax
test di, di
je 0x42e4c1
mov ecx, dword [esp + 0x54]
mov edx, eax
nop
nop
nop
mov word [edx], di
add edx, 2
movzx edi, word [ecx]
add ecx, 2
test di, di
jne 0x42e4b0
mov dword [esp + 0x58], eax
mov word [edx], 0x5c
mov dword [esp + 0xc], 0xe33ee10c
mov dword [esp + 0x10], 0xe705e51b
mov dword [esp + 0x14], 0xfb06f919
mov dword [esp + 0x18], 0xff2dfddc
mov dword [esp + 0x1c], 0xf313f104
mov dword [esp + 0x20], 0xf713f500
mov word [esp + 0x24], 0x8988
lea eax, [esp + 0xc]
mov byte [eax + 0x1e], 0
mov dword [eax + 0x1a], 0
mov edi, 0x3c01f1a8
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ebp, byte [esp + edi - 0x3c01f19c]
mov ebx, ebp
and ebx, edi
mov eax, ebx
or al, 0xfd
inc al
mov ecx, ebx
and cl, 0xfd
mul cl
mov ecx, eax
mov eax, ebp
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, edi
add al, 0xb8
mov byte [esp + edi - 0x3c01f19c], al
inc edi
cmp edi, 0x3c01f1c7
jne 0x42e520
add edx, 2
mov ecx, dword [esp + 0x40]
movzx eax, word [ecx]
test ax, ax
je 0x42e591
add ecx, 2
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [edx], ax
add edx, 2
movzx eax, word [ecx]
add ecx, 2
test ax, ax
jne 0x42e580
mov word [edx], 0
movzx eax, word [esp + 0xc]
test ax, ax
mov edi, dword [esp + 0x58]
je 0x42e5d0
lea ecx, [esp + 0xe]
mov ebp, dword [esp + 0x3c]
nop
nop
nop
nop
mov word [edx], ax
add edx, 2
movzx eax, word [ecx]
add ecx, 2
test ax, ax
jne 0x42e5b0
jmp 0x42e5d4
mov ebp, dword [esp + 0x3c]
mov word [edx], 0
lea eax, [esp + 0x60]
push 0x60
push 3
push 0x120089
push eax
push edi
call fcn.004459d0
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x44f0e0]
xor ebx, ebx
jmp dword [0x44f140]
push edi
call fcn.0040c740
add esp, 4
movzx eax, bl
jmp dword [eax*4 + 0x44f148]
lea eax, [esp + 0x7c]
push 0
push eax
push dword [esp + 0x68]
call fcn.00445d80
add esp, 0xc
not eax
shr eax, 0x1f
xor ebx, ebx
mov dword [esp + 4], 0
jmp dword [eax*4 + 0x44f0e8]
mov edi, dword [esp + 0x7c]
lea eax, [edi + 1]
push eax
call fcn.0040c730
add esp, 4
push 0
push edi
mov edi, eax
push eax
push dword [esp + 0x6c]
call fcn.00445e80
add esp, 0x10
not eax
shr eax, 0x1f
mov dword [esp + 4], 0
jmp dword [eax*4 + 0x44f0f0]
mov eax, dword [esp + 0x7c]
mov byte [edi + eax], 0
push edi
call fcn.00403d70
add esp, 4
xor ecx, ecx
test eax, eax
setne cl
mov dword [esp + 4], 0
jmp dword [ecx*4 + 0x44f0f8]
jmp dword [0x44f138]
push edi
call fcn.0040c740
add esp, 4
mov eax, dword [esp + 0x60]
mov dword [esp + 0xc], 0xe8ebeae5
lea ecx, [esp + 0xc]
mov byte [ecx + 6], 0
mov word [ecx + 4], 0
nop
mov ecx, ebx
add cl, 0xa7
xor cl, byte [esp + ebx + 0xc]
add cl, 0xbd
mov byte [esp + ebx + 0xc], cl
inc ebx
cmp ebx, 7
jne 0x42e6d0
mov ecx, dword [0x45316c]
test ecx, ecx
je 0x42e720
mov edx, dword [esp + 0xc]
xor edi, edi
mov ebx, dword [0x453170]
nop
nop
nop
nop
cmp dword [ebx + edi*8], 0x7e776f1
je 0x42e710
inc edi
cmp ecx, edi
jne 0x42e700
jmp 0x42e720
mov ecx, dword [ebx + edi*8 + 4]
cmp ecx, edx
jne 0x42e757
nop
nop
nop
nop
nop
nop
nop
nop
mov edi, dword [esp + 0x58]
mov ebx, dword [esp + 4]
jmp dword [0x44f140]
movzx eax, bl
jmp dword [eax*4 + 0x44f148]
mov eax, dword [esp + 0x64]
mov ecx, dword [esp + 0x48]
add eax, ecx
inc eax
mov ecx, eax
and ecx, 0x16
xor eax, 0x16
lea edi, [eax + ecx*2]
lea ebx, [edi + edi]
jmp dword [0x44f150]
push eax
push 1
push dword [0x453174]
push ecx
call fcn.004421f0
add esp, 0x10
mov edi, dword [esp + 0x58]
mov ebx, dword [esp + 4]
jmp dword [0x44f140]
mov dword [esp + 0x4c], edi
mov dword [esp + 0x84], eax
push eax
call fcn.004046c0
add esp, 4
mov dword [esp + 0xc], 0x1c076a15
mov dword [esp + 0x10], 0x71126812
mov dword [esp + 0x14], 0x40800ca
mov dword [esp + 0x18], 0x790a700a
mov dword [esp + 0x1c], 0x4170b0b
mov dword [esp + 0x20], 0xf2780f
mov ecx, 0xd9a8ce29
movzx edx, byte [esp + ecx + 0x265731e3]
xor edx, ecx
mov edi, edx
and edi, 1
or edx, 1
add edx, edi
add dl, 0x32
mov byte [esp + ecx + 0x265731e3], dl
inc ecx
cmp ecx, 0xd9a8ce41
jne 0x42e7c0
lea ecx, [esp + 0xc]
push ecx
push eax
call fcn.00404800
add esp, 8
mov ebp, 0xffffffff
mov edx, 0xfffffffe
mov edi, 0xfffffffd
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, ebp
add edx, 2
add edi, 3
cmp byte [eax + ebp + 1], 0
lea ebp, [ebp + 1]
jne 0x42e810
shr edi, 2
mov ecx, ebp
xor ecx, 1
and edx, 0xfffffffc
sub edx, ecx
movzx ecx, byte [eax + edx]
cmp ecx, 0x3d
je 0x42e83d
cmp ecx, 0x2e
jne 0x42e83e
dec edi
movzx ecx, byte [eax + ebp - 2]
cmp ecx, 0x3d
mov dword [esp + 0x70], eax
je 0x42e851
cmp ecx, 0x2e
jne 0x42e852
dec edi
mov dword [esp + 0x80], edi
lea eax, [edi + 1]
push eax
call fcn.0040c730
add esp, 4
mov dword [esp + 0x44], eax
test ebp, ebp
je 0x42e971
xor ecx, ecx
mov edi, 2
mov dword [esp + 0x5c], ebp
jmp 0x42e898
mov ebp, dword [esp + 0x5c]
lea eax, [edi + 4]
add edi, 2
mov ecx, dword [esp + 8]
cmp edi, ebp
mov edi, eax
jae 0x42e971
mov dword [esp + 4], ecx
mov ebp, dword [esp + 0x70]
movzx eax, byte [ebp + edi - 2]
push eax
call fcn.00422f50
add esp, 4
mov byte [esp + 8], al
movzx eax, byte [ebp + edi - 1]
push eax
call fcn.00422f50
mov edx, dword [esp + 8]
add esp, 4
movzx ecx, byte [esp + 8]
shl cl, 2
mov ah, al
shr ah, 4
and ah, 3
or ah, cl
lea ecx, [edx + 1]
mov dword [esp + 8], ecx
mov ecx, dword [esp + 0x44]
mov byte [ecx + edx], ah
cmp edi, dword [esp + 0x5c]
jae 0x42e880
mov byte [esp + 3], al
movzx eax, byte [ebp + edi]
push eax
call fcn.00422f50
add esp, 4
cmp al, 0x40
mov ebp, dword [esp + 0x5c]
je 0x42e884
movzx ecx, byte [esp + 3]
shl cl, 4
mov byte [esp + 3], al
shr al, 2
and al, 0xf
or al, cl
mov edx, dword [esp + 4]
lea ecx, [edx + 2]
mov dword [esp + 8], ecx
mov ecx, dword [esp + 0x44]
mov byte [ecx + edx + 1], al
lea eax, [edi + 1]
cmp eax, ebp
jae 0x42e884
mov eax, dword [esp + 0x70]
movzx eax, byte [eax + edi + 1]
push eax
call fcn.00422f50
add esp, 4
cmp al, 0x40
movzx ecx, byte [esp + 3]
je 0x42e884
shl cl, 6
add al, cl
mov ecx, dword [esp + 0x44]
mov edx, dword [esp + 4]
mov byte [ecx + edx + 2], al
add edx, 3
mov dword [esp + 8], edx
jmp 0x42e884
mov eax, dword [esp + 0x80]
add eax, 0xfffffffb
mov dword [esp + 0x68], eax
mov eax, dword [esp + 0x44]
add eax, 5
mov dword [esp + 0x6c], eax
mov dword [esp + 0x74], 0
mov dword [esp + 0x78], 0
push 0x31f26afb
push dword [0x453178]
call fcn.00444f40
add esp, 8
lea ecx, [esp + 0x74]
lea edx, [esp + 0x68]
push ecx
push 0
push 0
push 0
push 0
push 0
push edx
call eax
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x44f100]
mov dword [esp + 4], 0
mov ebp, dword [esp + 0x3c]
mov edi, dword [esp + 0x4c]
jmp dword [0x44f120]
lea eax, [esi + 0x10]
cmp dword [esp + 0x48], 0xfffffff8
mov ebp, dword [esp + 0x3c]
jge 0x42e9fa
mov eax, 0xffffffff
push eax
call fcn.0040c730
add esp, 4
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0x79de7b55
mov dword [esp + 0x10], 0x7d2c7fe8
mov dword [esp + 0x14], 0x71fa73e8
mov dword [esp + 0x18], 0x757677e4
lea eax, [esp + 0x1c]
mov byte [eax + 2], 0
mov word [eax], 0
mov eax, 0x1f
mov ecx, 0x40
nop
nop
mov edi, ecx
and edi, 0x69
mov edx, eax
and edx, 0x16
or edx, edi
xor dl, byte [esp + eax - 0x13]
xor dl, 0xe9
add dl, 0x45
mov byte [esp + eax - 0x13], dl
inc eax
dec ecx
cmp eax, 0x32
jne 0x42ea40
mov edx, dword [esp + 0x40]
movzx ecx, word [edx]
mov eax, dword [esp + 8]
test cx, cx
je 0x42ea91
add edx, 2
mov eax, dword [esp + 8]
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 0x42ea80
mov word [eax], 0
movzx ecx, word [esp + 0xc]
test cx, cx
je 0x42eac3
lea edx, [esp + 0xe]
mov edi, dword [esp + 0x4c]
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 0x42eab0
jmp 0x42eac7
mov edi, dword [esp + 0x4c]
mov word [eax], 0
mov ecx, dword [esp + 0x104]
push dword [esp + 0x74]
push dword [esp + 0x7c]
push dword [esp + 0x10]
call fcn.0040d170
mov dword [esp + 4], eax
mov eax, dword [case.0x42d23b.87]
nop
nop
nop
jmp eax
jmp dword [0x44f118]
push dword [esp + 8]
call fcn.0040c740
add esp, 4
push 0xd80d2c4a
push dword [0x453160]
call fcn.00444f40
add esp, 8
push dword [esp + 0x78]
call eax
jmp dword [0x44f120]
push dword [esp + 0x44]
call fcn.0040c740
add esp, 4
push dword [esp + 0x84]
call fcn.00404930
add esp, 4
jmp dword [0x44f138]
mov ecx, dword [esp + 0x88]
add ecx, 4
xor eax, eax
cmp ecx, 0xc
setne al
jmp dword [eax*4 + 0x44f0d0]
jmp dword [0x44f0d8]
jmp dword [0x44f194]
push ebp
call fcn.0040c740
add esp, 4
nop
nop
push ebp
call fcn.0040c740
add esp, 4
jmp dword [0x44f198]
mov eax, dword [esp + 0x50]
and al, 1
add esp, 0xf0
pop esi
pop edi
pop ebx
pop ebp
ret
xor ebx, ebx
jmp dword [0x44f298]
push dword [esp + 0x88]
call fcn.0040c740
add esp, 4
mov eax, ebx
add esp, 0xd0
pop esi
pop edi
pop ebx
pop ebp
ret
lea eax, [esp + 0x80]
push 0
push eax
push dword [esp + 0x84]
call fcn.00445d80
add esp, 0xc
not eax
shr eax, 0x1f
xor ebx, ebx
mov dword [esp + 0x14], 0
jmp dword [eax*4 + 0x44f1a8]
mov esi, dword [esp + 0x80]
lea eax, [esi + 1]
push eax
call fcn.0040c730
add esp, 4
mov edi, eax
push 0
push esi
push eax
push dword [esp + 0x88]
call fcn.00445e80
add esp, 0x10
not eax
shr eax, 0x1f
mov dword [esp + 0x14], 0
jmp dword [eax*4 + 0x44f1b0]
mov eax, dword [esp + 0x80]
mov byte [edi + eax], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x84], edi
mov esi, edi
jmp dword [0x44f1b8]
mov dword [esp + 0x18], 0x92aeac96
mov dword [esp + 0x1c], 0x8eb588aa
mov word [esp + 0x20], 0x4d67
mov byte [esp + 0x22], 0x22
mov dword [esp + 0x23], 0
mov eax, 0x7130aa74
lea ecx, [esp + 0x18]
nop
nop
nop
movzx edx, byte [ecx]
mov edi, eax
or edi, edx
not edi
lea ebp, [eax - 0x7130aa00]
and ebp, edx
or ebp, edi
mov edx, ebp
and edx, 0x48
xor ebp, 0x48
lea edx, [edx*2]
add edx, ebp
inc dl
mov byte [ecx], dl
inc ecx
dec eax
cmp eax, 0x7130aa65
jne 0x42ede0
jmp case.0x42d23b.129
jmp dword [0x44f1c4]
mov dword [esp + 0x18], 0x92aeac96
mov dword [esp + 0x1c], 0x8eb588aa
mov word [esp + 0x20], 0x4d67
mov byte [esp + 0x22], 0x22
mov dword [esp + 0x23], 0
lea eax, [esp + 0x18]
mov ecx, 0x7130aa74
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edx, byte [eax]
mov edi, ecx
or edi, edx
not edi
lea ebp, [ecx - 0x7130aa00]
and ebp, edx
or ebp, edi
mov edx, ebp
and edx, 0x48
xor ebp, 0x48
lea edx, [edx*2]
add edx, ebp
inc dl
mov byte [eax], dl
inc eax
dec ecx
cmp ecx, 0x7130aa65
jne 0x42ee60
movzx edx, byte [esp + 0x18]
mov edi, esi
test dl, dl
je 0x42ee20
lea eax, [esp + 0x18]
mov ecx, esi
mov edi, esi
jmp 0x42eebb
movzx edx, byte [eax]
test dl, dl
je 0x42ee20
mov dh, byte [ecx]
test dh, dh
je 0x42eee0
inc ecx
inc eax
lea ebp, [edi + 1]
cmp dh, dl
je 0x42eece
mov edi, ebp
mov ecx, ebp
je 0x42eeb0
lea eax, [esp + 0x18]
jmp 0x42eeb0
xor edi, edi
jmp dword [0x44f1c4]
xor eax, eax
test edi, edi
sete al
jmp dword [eax*4 + 0x44f1c8]
lea esi, [edi + 0xa]
movzx eax, byte [edi + 0xa]
xor ebp, ebp
test al, al
je 0x42ef21
mov ecx, esi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp al, 0x22
je 0x42ef1f
movzx eax, byte [ecx + 1]
inc ecx
test al, al
jne 0x42ef10
jmp 0x42ef21
mov ebp, ecx
mov ecx, ebp
sub ecx, esi
xor eax, eax
cmp ecx, 5
setb al
jmp dword [eax*4 + 0x44f1d0]
xor eax, eax
cmp byte [ebp - 1], 0x74
setne al
jmp dword [eax*4 + 0x44f1d8]
xor eax, eax
cmp byte [ebp - 2], 0x78
setne al
jmp dword [eax*4 + 0x44f1e0]
xor eax, eax
cmp byte [ebp - 3], 0x74
setne al
jmp dword [eax*4 + 0x44f1e8]
xor eax, eax
cmp byte [ebp - 4], 0x2e
setne al
jmp dword [eax*4 + 0x44f1f0]
mov eax, ecx
inc eax
mov dword [esp], eax
mov dword [esp + 0x6c], ecx
jns 0x42ef98
mov eax, 0xffffffff
jmp 0x42ef9f
mov eax, dword [case.0x42ef2d.12]
nop
nop
nop
nop
jmp eax
jmp dword [0x44f1b8]
lea eax, [ecx*2 + 2]
push eax
call fcn.0040c730
add esp, 4
mov dword [esp + 0x10], eax
push ebp
push esi
push dword [esp + 8]
push eax
call fcn.0040e8f0
add esp, 0x10
lea eax, [esp + 0x78]
push 0x60
push 3
push 0x120089
push eax
push dword [esp + 0x20]
call fcn.004459d0
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x44f208]
mov esi, ebp
mov edi, dword [esp + 0x10]
jmp dword [0x44f258]
mov dword [esp + 0x68], ebp
lea eax, [esp + 0x74]
push 0
push eax
push dword [esp + 0x80]
call fcn.00445d80
add esp, 0xc
test eax, eax
setns al
mov ebp, dword [esp + 0x74]
cmp ebp, 0x100000
setb cl
and cl, al
movzx eax, cl
jmp dword [eax*4 + 0x44f210]
push ebp
call fcn.0040c730
add esp, 4
push 0
push ebp
mov dword [esp + 0x68], eax
push eax
push dword [esp + 0x84]
call fcn.00445e80
add esp, 0x10
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x44f218]
xor ebp, ebp
mov ecx, dword [esp + 0x10]
jmp 0x42f068
add ecx, 2
test dx, dx
je 0x42f079
mov eax, ebp
movzx edx, word [ecx]
mov ebp, ecx
cmp dx, 0x5c
je 0x42f060
mov ebp, eax
jmp 0x42f060
mov ecx, dword [case.0x42ef2d.22]
nop
jmp ecx
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x44f230]
xor ebp, ebp
mov dword [esp + 0xc], 0
jmp dword [0x44f23c]
sub ebp, dword [esp + 0x10]
sar ebp, 1
lea eax, [ebp + 1]
mov dword [esp + 0xc], eax
not ebp
add ebp, dword [esp + 0x6c]
jmp dword [0x44f23c]
push dword [esp + 8]
call fcn.0040c740
add esp, 4
jmp dword [0x44f250]
push dword [esp + 0x60]
call fcn.0040c740
add esp, 4
mov eax, dword [esp + 0x78]
mov dword [esp + 0x18], 0xe8ebeae5
lea ecx, [esp + 0x1c]
mov byte [ecx + 2], 0
mov word [ecx], 0
xor ecx, ecx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edx, ecx
add dl, 0xa7
xor dl, byte [esp + ecx + 0x18]
add dl, 0xbd
mov byte [esp + ecx + 0x18], dl
inc ecx
cmp ecx, 7
jne 0x42f100
mov ecx, dword [0x45316c]
test ecx, ecx
mov ebp, dword [esp + 0x68]
je 0x42f148
mov edx, dword [esp + 0x18]
xor esi, esi
mov edi, dword [0x453170]
cmp dword [edi + esi*8], 0x7e776f1
je 0x42f140
inc esi
cmp ecx, esi
jne 0x42f130
jmp 0x42f148
mov ecx, dword [edi + esi*8 + 4]
cmp ecx, edx
jne 0x42f15a
mov esi, ebp
mov edi, dword [esp + 0x10]
jmp dword [0x44f258]
jmp dword [0x44f260]
push eax
push 1
push dword [0x453174]
push ecx
call fcn.004421f0
add esp, 0x10
mov esi, ebp
mov edi, dword [esp + 0x10]
jmp dword [0x44f258]
mov dword [esp + 0x64], ebp
lea eax, [ebp + 0x1b]
push eax
call fcn.0040c730
add esp, 4
mov ebp, eax
mov eax, dword [esp + 0x6c]
sub eax, dword [esp + 0xc]
mov dword [esp + 4], eax
mov dword [esp + 0x18], 0xc4c2c4b9
mov dword [esp + 0x1c], 0xc9dfc1ce
mov dword [esp + 0x20], 0xd2b499c4
mov dword [esp + 0x24], 0xb0f5e8f0
mov dword [esp + 0x28], 0xeefef696
mov dword [esp + 0x2c], 0xa4e2ecfc
mov word [esp + 0x30], 0xbea3
mov byte [esp + 0x32], 0x4a
mov word [esp + 0x33], 0
mov eax, 0x14
mov dword [esp + 8], ebp
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ecx, byte [esp + eax + 4]
mov edx, ecx
and edx, eax
add dl, dl
sub cl, dl
movzx ecx, cl
add ecx, eax
add cl, 0x9c
mov byte [esp + eax + 4], cl
inc eax
cmp eax, 0x31
jne 0x42f1f0
mov eax, dword [esp + 0xc]
lea edx, [esi + eax]
movzx ecx, byte [esp + 0x18]
mov eax, ebp
test cl, cl
je 0x42f23c
lea ebp, [esp + 0x19]
mov eax, dword [esp + 8]
nop
nop
nop
nop
nop
nop
nop
mov byte [eax], cl
inc eax
movzx ecx, byte [ebp]
inc ebp
test cl, cl
jne 0x42f230
mov byte [eax], 0
mov ebp, dword [esp + 4]
test ebp, ebp
je 0x42f29a
mov ecx, dword [esp + 0xc]
add ecx, edi
mov dword [esp], ecx
mov ecx, dword [esp + 0x68]
sub ecx, dword [esp]
add ecx, 0xfffffff5
mov dword [esp + 0x5c], ecx
mov ecx, ebp
and ecx, 3
je 0x42f29e
mov dword [esp + 0x70], ecx
xor ecx, ecx
nop
nop
nop
nop
nop
mov ebp, eax
movzx eax, byte [edx]
mov byte [esp], al
cmp byte [esp], 1
sbb edx, 0xffffffff
movzx eax, byte [esp]
mov byte [ebp + ecx], al
mov eax, ebp
inc ecx
cmp dword [esp + 0x70], ecx
jne 0x42f270
add eax, ecx
sub dword [esp + 4], ecx
mov ecx, eax
jmp 0x42f29e
mov ecx, eax
jmp 0x42f2f7
cmp dword [esp + 0x5c], 3
mov ebp, dword [esp + 4]
jb 0x42f2f7
nop
nop
nop
nop
nop
nop
nop
mov dword [esp + 4], ebp
movzx ecx, byte [edx]
cmp cl, 1
sbb edx, 0xffffffff
mov byte [eax], cl
movzx ecx, byte [edx]
cmp cl, 1
sbb edx, 0xffffffff
mov byte [eax + 1], cl
movzx ecx, byte [edx]
cmp cl, 1
sbb edx, 0xffffffff
mov byte [eax + 2], cl
movzx ecx, byte [edx]
cmp cl, 1
sbb edx, 0xffffffff
lea ebp, [eax + 4]
mov dword [esp], ebp
mov ebp, dword [esp + 4]
mov byte [eax + 3], cl
mov ecx, dword [esp]
mov eax, ecx
add ebp, 0xfffffffc
jne 0x42f2b0
mov byte [ecx], 0
mov ecx, dword [esp + 0xe4]
push dword [esp + 0x74]
push dword [esp + 0x64]
push dword [esp + 0x10]
call fcn.0040d350
mov ebp, dword [esp + 0x64]
lea eax, [ebp + 0x1b]
push eax
call fcn.0040c730
add esp, 4
mov dword [esp + 8], eax
mov eax, dword [esp + 0x6c]
sub eax, dword [esp + 0xc]
mov dword [esp + 4], eax
mov dword [esp + 0x18], 0xc4c2c4b9
mov dword [esp + 0x1c], 0xc9dfc1ce
mov dword [esp + 0x20], 0xd2b499c4
mov dword [esp + 0x24], 0xb0f5e8f0
mov dword [esp + 0x28], 0xeefef696
mov dword [esp + 0x2c], 0xa4e2ecfc
mov word [esp + 0x30], 0xbea3
mov byte [esp + 0x32], 0x4a
mov word [esp + 0x33], 0
mov eax, 0x14
nop
nop
nop
nop
nop
nop
movzx ecx, byte [esp + eax + 4]
mov edx, ecx
and edx, eax
add dl, dl
sub cl, dl
movzx ecx, cl
add ecx, eax
add cl, 0x9c
mov byte [esp + eax + 4], cl
inc eax
cmp eax, 0x31
jne 0x42f380
mov dword [esp + 0x64], ebp
mov eax, dword [esp + 0xc]
lea ecx, [esi + eax]
movzx eax, byte [esp + 0x18]
mov edx, dword [esp + 8]
test al, al
je 0x42f3cc
lea ebp, [esp + 0x19]
mov edx, dword [esp + 8]
nop
mov byte [edx], al
inc edx
movzx eax, byte [ebp]
inc ebp
test al, al
jne 0x42f3c0
mov byte [edx], 0
mov ebp, dword [esp + 4]
test ebp, ebp
je 0x42f42a
mov eax, dword [esp + 0xc]
add eax, edi
mov dword [esp], eax
mov eax, dword [esp + 0x68]
sub eax, dword [esp]
add eax, 0xfffffff5
mov dword [esp + 0x5c], eax
mov eax, ebp
and eax, 3
je 0x42f42e
mov dword [esp + 0x70], eax
xor eax, eax
nop
nop
nop
nop
nop
mov ebp, edx
movzx edx, byte [ecx]
mov byte [esp], dl
cmp byte [esp], 1
sbb ecx, 0xffffffff
movzx edx, byte [esp]
mov byte [ebp + eax], dl
mov edx, ebp
inc eax
cmp dword [esp + 0x70], eax
jne 0x42f400
add edx, eax
sub dword [esp + 4], eax
mov eax, edx
jmp 0x42f42e
mov eax, edx
jmp 0x42f483
cmp dword [esp + 0x5c], 3
mov ebp, dword [esp + 4]
jb 0x42f483
nop
nop
nop
nop
nop
nop
nop
mov dword [esp + 4], ebp
movzx eax, byte [ecx]
cmp al, 1
sbb ecx, 0xffffffff
mov byte [edx], al
movzx eax, byte [ecx]
cmp al, 1
sbb ecx, 0xffffffff
mov byte [edx + 1], al
movzx eax, byte [ecx]
cmp al, 1
sbb ecx, 0xffffffff
mov byte [edx + 2], al
movzx eax, byte [ecx]
cmp al, 1
sbb ecx, 0xffffffff
lea ebp, [edx + 4]
mov dword [esp], ebp
mov ebp, dword [esp + 4]
mov byte [edx + 3], al
mov eax, dword [esp]
mov edx, eax
add ebp, 0xfffffffc
jne 0x42f440
mov byte [eax], 0
mov ecx, dword [esp + 0xe4]
push dword [esp + 0x74]
push dword [esp + 0x64]
push dword [esp + 0x10]
call fcn.0040d350
mov ebp, dword [esp + 0x64]
jmp dword [0x44f244]
mov ecx, dword [esp + 0x14]
and cl, 1
or cl, al
mov dword [esp + 0x14], ecx
jmp dword [0x44f248]
jmp dword [0x44f250]
push edi
call fcn.0040c740
add esp, 4
push edi
call fcn.0040c740
add esp, 4
mov esi, ebp
jmp dword [0x44f268]
mov eax, dword [case.0x42d23b.127]
mov edi, dword [esp + 0x84]
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
jmp dword [0x44f280]
jmp dword [0x44f288]
push edi
call fcn.0040c740
add esp, 4
push edi
call fcn.0040c740
add esp, 4
jmp dword [0x44f290]
mov eax, dword [esp + 0x7c]
mov dword [esp + 0x18], 0xe8ebeae5
mov word [esp + 0x1c], 0
mov byte [esp + 0x1e], 0
nop
nop
mov ecx, ebx
add cl, 0xa7
xor cl, byte [esp + ebx + 0x18]
add cl, 0xbd
mov byte [esp + ebx + 0x18], cl
inc ebx
cmp ebx, 7
jne 0x42f530
mov ecx, dword [0x45316c]
test ecx, ecx
mov ebx, dword [esp + 0x14]
je 0x42f578
mov edx, dword [esp + 0x18]
xor esi, esi
mov edi, dword [0x453170]
cmp dword [edi + esi*8], 0x7e776f1
je 0x42f570
inc esi
cmp ecx, esi
jne 0x42f560
jmp 0x42f578
mov ecx, dword [edi + esi*8 + 4]
cmp ecx, edx
jne 0x42f581
and bl, 1
jmp dword [0x44f298]
push eax
push 1
push dword [0x453174]
push ecx
call fcn.004421f0
add esp, 0x10
and bl, 1
jmp dword [0x44f298]
jmp 0x430bfe
movzx ecx, word [eax]
test cx, cx
je 0x430bcc
mov dword [esi + 8], ebx
mov ebx, ecx
mov edx, eax
add edx, 2
xor ecx, ecx
mov word [esi + 0xc], bx
jmp 0x430a2c
inc ecx
movzx ebx, word [edx]
add edx, 2
test bx, bx
je 0x430a5d
cmp bx, 0x7f
jbe 0x430a20
mov edi, ecx
movzx ecx, bx
cmp ecx, 0x7ff
ja 0x430a50
mov ecx, edi
add ecx, 2
jmp 0x430a21
cmp bx, 0xffff
mov ecx, edi
je 0x430a21
add ecx, 3
jmp 0x430a21
mov ebx, eax
lea eax, [ecx + 4]
and eax, 0xfffffffc
call fcn.0040c690
mov eax, esp
and eax, 0xfffffff0
mov esp, eax
test ecx, ecx
je 0x430bd8
mov dword [esi + 4], eax
movzx edx, word [esi + 0xc]
movzx edx, dx
lea edi, [ebx + 2]
mov dword [esi + 0xc], edi
cmp dx, 0x7f
ja 0x430aa0
mov ebx, dword [esi + 4]
lea edi, [ebx + 1]
mov byte [ebx], dl
jmp 0x430aca
cmp edx, 0x7ff
ja 0x430af0
cmp ecx, 2
jb 0x430af0
mov edi, ecx
mov ecx, edx
shr ecx, 6
add cl, 0xc0
mov ebx, dword [esi + 4]
mov byte [ebx], cl
mov ecx, edi
and dl, 0x3f
or dl, 0x80
lea edi, [ebx + 2]
mov byte [ebx + 1], dl
mov edx, dword [esi + 0xc]
add ecx, ebx
sub ecx, edi
mov ebx, edx
mov dword [esi + 4], edi
movzx edx, word [ebx]
test dx, dx
je 0x430bc4
test ecx, ecx
jne 0x430a80
jmp 0x430bc4
mov edi, edx
and edi, 0xfc00
cmp edi, 0xd800
mov dword [esi + 0x10], ecx
jne 0x430b63
cmp ecx, 4
jb 0x430b63
movzx edi, word [ebx + 2]
mov dword [esi + 0xc], edi
shl edx, 0xa
add edx, edi
add edx, 0xfca02400
mov ecx, edx
shr ecx, 0x12
add cl, 0xf0
mov edi, dword [esi + 4]
mov byte [edi], cl
mov ecx, edx
shr ecx, 0xc
and cl, 0x3f
or cl, 0x80
mov byte [edi + 1], cl
mov ecx, dword [esi + 0x10]
shr edx, 6
and dl, 0x3f
or dl, 0x80
mov byte [edi + 2], dl
add ebx, 4
mov edx, dword [esi + 0xc]
and dl, 0x3f
or dl, 0x80
mov byte [edi + 3], dl
mov dword [esi + 4], edi
add edi, 4
mov edx, ebx
mov ebx, dword [esi + 4]
jmp 0x430acd
movzx ecx, di
cmp ecx, 0xdc00
jne 0x430b79
mov ebx, dword [esi + 0xc]
mov ecx, dword [esi + 0x10]
jmp 0x430ad6
mov ecx, dword [esi + 0x10]
cmp ecx, 3
jb 0x430bba
mov ecx, edx
shr ecx, 0xc
or cl, 0xe0
mov edi, dword [esi + 4]
mov byte [edi], cl
mov ecx, edx
shr ecx, 6
and cl, 0x3f
or cl, 0x80
mov byte [edi + 1], cl
mov ecx, dword [esi + 0x10]
mov ebx, edx
not ebx
or ebx, 0x3f
add ebx, edx
add bl, 0x81
mov edx, edi
add edi, 3
mov byte [edx + 2], bl
mov ebx, edx
jmp 0x430aca
mov ebx, dword [esi + 4]
mov edi, ebx
jmp 0x430aca
mov ebx, dword [esi + 8]
mov ecx, dword [esi + 4]
jmp 0x430bdd
push eax
mov eax, esp
and eax, 0xfffffff0
mov esp, eax
mov ecx, eax
jmp 0x430bdd
mov ecx, eax
mov ebx, dword [esi + 8]
mov byte [ecx], 0
movzx ecx, byte [eax]
test cl, cl
je 0x430bfb
inc eax
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [ebx], cl
inc ebx
movzx ecx, byte [eax]
inc eax
test cl, cl
jne 0x430bf0
mov byte [ebx], 0
mov byte [ebx], 0xa
inc ebx
lea eax, [esi + 0x9c]
push eax
call fcn.00432e30
add esp, 4
movzx eax, al
jmp dword [eax*4 + 0x44f7d8]
jmp 0x4310ee
mov dword [esi + 8], ebx
lea eax, [esi + 0x734]
push 0xa
push 0xb
push eax
push dword [esi + 0x9c]
call fcn.00423a30
add esp, 0x10
mov dword [esi + 0x10], eax
lea eax, [esi + 0x604]
push 0xa
push 0xb
push eax
push dword [esi + 0xa0]
call fcn.00423a30
add esp, 0x10
mov dword [esi + 0xc], eax
lea eax, [esi + 0x934]
push 0xa
push 0xb
push eax
push dword [esi + 0xa4]
call fcn.00423a30
add esp, 0x10
mov dword [esi + 4], eax
mov eax, dword [esi + 0xac]
mov dword [esi + 0x404], 0xe412043a
mov dword [esi + 0x408], 0xd2e01def
mov dword [esi + 0x40c], 0xccd3caca
mov dword [esi + 0x410], 0xc7e6ff32
mov dword [esi + 0x414], 0
mov edx, 0x1287e374
mov edi, 0x8b
nop
nop
nop
nop
nop
nop
nop
movzx ebx, byte [esi + edx - 0x1287df70]
mov ecx, edi
xor ecx, edx
and ecx, ebx
xor ecx, edx
not ecx
and ecx, edx
add cl, cl
sub bl, cl
movzx ecx, bl
add ecx, edx
add cl, 0xbc
mov byte [esi + edx - 0x1287df70], cl
inc edx
dec edi
cmp edx, 0x1287e388
jne 0x430cc0
movzx edx, byte [esi + 0x404]
test dl, dl
je 0x430d1d
lea edi, [esi + 0x405]
mov ebx, dword [esi + 8]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [ebx], dl
inc ebx
movzx edx, byte [edi]
inc edi
test dl, dl
jne 0x430d10
jmp 0x430d20
mov ebx, dword [esi + 8]
mov byte [ebx], 0
movzx edx, byte [eax]
test dl, dl
je 0x430d3d
inc eax
mov edi, dword [esi + 0x10]
nop
nop
mov byte [ebx], dl
inc ebx
movzx edx, byte [eax]
inc eax
test dl, dl
jne 0x430d30
jmp 0x430d40
mov edi, dword [esi + 0x10]
mov word [ebx], 0x2820
add ebx, 2
movzx ecx, byte [edi]
test cl, cl
je 0x430d6d
inc edi
mov eax, dword [esi + 4]
mov edx, dword [esi + 0xc]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [ebx], cl
inc ebx
movzx ecx, byte [edi]
inc edi
test cl, cl
jne 0x430d60
jmp 0x430d73
mov eax, dword [esi + 4]
mov edx, dword [esi + 0xc]
mov byte [ebx], 0x2e
inc ebx
movzx ecx, byte [edx]
test cl, cl
je 0x430d8b
inc edx
nop
mov byte [ebx], cl
inc ebx
movzx ecx, byte [edx]
inc edx
test cl, cl
jne 0x430d80
mov byte [ebx], 0x2e
inc ebx
movzx ecx, byte [eax]
test cl, cl
je 0x430dab
inc eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [ebx], cl
inc ebx
movzx ecx, byte [eax]
inc eax
test cl, cl
jne 0x430da0
mov byte [ebx], 0x29
inc ebx
lea edi, [esi + 0x2c]
push edi
call fcn.00445780
add esp, 4
movzx eax, al
jmp dword [eax*4 + 0x44f7e0]
jmp 0x430ec3
mov dword [esi + 8], ebx
mov byte [ebx], 0x20
xor ecx, ecx
cmp dword [esi + 0x2c], 1
sete cl
lea eax, [esi + 0x404]
jmp dword [ecx*4 + 0x44f7e8]
mov dword [esi + 0x404], 0x93dedf18
mov byte [esi + 0x408], 0
mov ecx, 0xea99311c
mov edx, 0xe3
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edi, byte [esi + ecx + 0x1566d2e8]
mov ebx, edx
xor ebx, ecx
and ebx, edi
xor ebx, ecx
add ebx, 0x4b2177df
mov edi, ebx
and edi, 1
xor ebx, 1
lea ebx, [ebx + edi*2]
add bl, 0x94
mov byte [esi + ecx + 0x1566d2e8], bl
inc ecx
dec edx
cmp ecx, 0xea993121
jne 0x430e10
jmp case.0x42d23b.193
mov dword [esi + 0x404], 0x83707238
mov ecx, 0x87777a60
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ebx, byte [esi + ecx + 0x788889a4]
mov edi, ecx
and edi, ebx
or ebx, ecx
lea edx, [edi + edi]
not edx
add edx, edi
and edx, ebx
mov ebx, edx
not ebx
add edx, 0x5aaa9c1f
or ebx, edx
and ebx, 1
or edx, 1
add edx, ebx
mov byte [esi + ecx + 0x788889a4], dl
inc ecx
cmp ecx, 0x87777a64
jne 0x430e60
mov ebx, dword [esi + 8]
inc ebx
movzx ecx, byte [eax]
test cl, cl
je 0x430ebd
inc eax
lea edi, [esi + 0x2c]
nop
nop
nop
nop
nop
nop
mov byte [ebx], cl
inc ebx
movzx ecx, byte [eax]
inc eax
test cl, cl
jne 0x430eb0
jmp 0x430ec0
lea edi, [esi + 0x2c]
mov byte [ebx], 0
mov dword [esi + 0x404], 0x5d2a381a
mov dword [esi + 0x408], 0x71797a79
mov dword [esi + 0x40c], 0x8d7d5f24
mov dword [esi + 0x410], 0x1d3e597b
mov word [esi + 0x414], 0
mov byte [esi + 0x416], 0
xor eax, eax
nop
nop
nop
mov ecx, eax
add cl, 0x83
xor cl, byte [esi + eax + 0x404]
add cl, 0x71
mov byte [esi + eax + 0x404], cl
inc eax
cmp eax, 0x13
jne 0x430f00
movzx eax, byte [esi + 0x404]
test al, al
je 0x430f3b
lea ecx, [esi + 0x405]
nop
nop
nop
mov byte [ebx], al
inc ebx
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x430f30
mov byte [ebx], 0
movzx eax, byte [esi + 0xb0]
test al, al
je 0x430f5b
lea ecx, [esi + 0xb1]
nop
mov byte [ebx], al
inc ebx
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x430f50
mov byte [ebx], 0
mov dword [esi + 0x404], 0xbbee94f6
mov dword [esi + 0x408], 0xe3a75055
mov dword [esi + 0x40c], 0xa25452ae
mov dword [esi + 0x410], 0x8f8fe58a
mov dword [esi + 0x414], 0xf9bf
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, eax
add cl, 0xd2
xor cl, byte [esi + eax + 0x404]
add cl, 0xe6
mov byte [esi + eax + 0x404], cl
inc eax
cmp eax, 0x14
jne 0x430fa0
movzx eax, byte [esi + 0x404]
test al, al
je 0x430fdb
lea ecx, [esi + 0x405]
nop
nop
nop
mov byte [ebx], al
inc ebx
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x430fd0
mov byte [ebx], 0
movzx eax, word [esi + 0xc4]
xor ecx, ecx
test ax, ax
setns cl
jmp dword [ecx*4 + 0x44f7f0]
jmp 0x431001
mov byte [ebx], 0x2b
inc ebx
movzx eax, word [esi + 0xc4]
cwde
push 0xa
push 7
push edi
push eax
call fcn.00434b70
add esp, 0x10
movzx ecx, byte [eax]
test cl, cl
je 0x43102b
inc eax
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [ebx], cl
inc ebx
movzx ecx, byte [eax]
inc eax
test cl, cl
jne 0x431020
mov byte [ebx], 0
mov dword [esi + 0x404], 0x36ded4f6
mov dword [esi + 0x408], 0x2766a6e
mov dword [esi + 0x40c], 0x23c60d0c
mov dword [esi + 0x410], 0x350f7105
mov word [esi + 0x414], 0xe9c8
mov dword [esi + 0x416], 0
mov byte [esi + 0x41a], 0
mov eax, 0x8cd593aa
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ecx, byte [esi + eax + 0x732a705a]
mov edx, ecx
and edx, eax
add dl, dl
sub cl, dl
movzx ecx, cl
add ecx, eax
add cl, 0xae
mov byte [esi + eax + 0x732a705a], cl
inc eax
cmp eax, 0x8cd593c1
jne 0x431080
movzx eax, byte [esi + 0x404]
test al, al
je 0x4310cb
lea ecx, [esi + 0x405]
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [ebx], al
inc ebx
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x4310c0
mov byte [ebx], 0
movzx eax, byte [esi + 0xc6]
test al, al
je 0x4310eb
lea ecx, [esi + 0xc7]
nop
mov byte [ebx], al
inc ebx
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x4310e0
mov byte [ebx], 0
mov eax, dword [esi + 0xac]
test eax, eax
je 0x431101
push eax
call fcn.0040c740
add esp, 4
mov dword [esi + 8], ebx
call fcn.0043b4d0
movzx eax, al
jmp dword [eax*4 + 0x44f7f8]
mov dword [esi + 0x404], 0xe8121812
mov dword [esi + 0x408], 0x7d19
xor ecx, ecx
lea eax, [esi + 0x404]
xor edx, edx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edi, ecx
and edi, 4
mov ebx, edx
xor ebx, 0xea
add ebx, edi
xor bl, byte [esi + edx + 0x404]
add bl, 0x6e
mov byte [esi + edx + 0x404], bl
inc edx
add ecx, 2
cmp edx, 8
jne 0x431140
jmp case.0x42d23b.202
mov dword [esi + 0x404], 0xda2b1714
mov byte [esi + 0x408], 0xb4
mov dword [esi + 0x409], 0
mov byte [esi + 0x40d], 0
mov ecx, 0x84a12c1e
lea eax, [esi + 0x404]
nop
nop
nop
nop
nop
nop
nop
nop
movzx edx, byte [esi + ecx + 0x7b5ed7e6]
mov ebx, edx
and ebx, ecx
add bl, bl
sub dl, bl
movzx edx, dl
add edx, ecx
add dl, 0x6a
mov byte [esi + ecx + 0x7b5ed7e6], dl
inc ecx
cmp ecx, 0x84a12c28
jne 0x4311a0
mov dword [esi + 0x9c], 0x46626c8a
mov dword [esi + 0xa0], 0x26302028
mov dword [esi + 0xa4], 0x712e2c3c
mov word [esi + 0xa8], 0x8d6c
mov dword [esi + 0xaa], 0
mov word [esi + 0xae], 0
xor ecx, ecx
mov edi, dword [esi + 8]
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edx, byte [esi + ecx + 0x9c]
xor dl, cl
xor dl, 0xe0
add dl, 0xa0
mov byte [esi + ecx + 0x9c], dl
inc ecx
cmp ecx, 0x14
jne 0x431210
movzx ecx, byte [esi + 0x9c]
test cl, cl
je 0x43124b
lea edx, [esi + 0x9d]
nop
nop
mov byte [edi], cl
inc edi
movzx ecx, byte [edx]
inc edx
test cl, cl
jne 0x431240
mov byte [edi], 0
movzx ecx, byte [eax]
test cl, cl
je 0x43126b
inc eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [edi], cl
inc edi
movzx ecx, byte [eax]
inc eax
test cl, cl
jne 0x431260
mov dword [esi + 8], edi
mov byte [edi], 0
mov byte [esi + 0x3f4], 0
mov dword [esi + 0x68], 0x10
push 0xa031abd0
push dword [0x453160]
call fcn.00444f40
add esp, 8
lea ecx, [esi + 0x68]
lea edx, [esi + 0x3f4]
push ecx
push edx
call eax
mov dword [esi + 0x9c], 0xec0af82a
mov dword [esi + 0xa0], 0xb6bebcb9
mov dword [esi + 0xa4], 0xf4438b8
mov word [esi + 0xa8], 0xd7f0
mov dword [esi + 0xaa], 0
mov byte [esi + 0xae], 0
xor eax, eax
xor ecx, ecx
nop
nop
nop
nop
nop
mov dword [esi + 4], eax
movzx edi, byte [esi + ecx + 0x9c]
mov dword [esi + 0xc], edi
mov eax, dword [esi + 4]
and eax, 0x2e
mov edx, ecx
xor edx, 0xabd861f7
add edx, eax
mov ebx, edx
and ebx, edi
mov edi, ebx
or edi, 0xfd
inc edi
mov eax, ebx
and eax, 0xfffffffd
imul eax, edi
mov edi, ebx
and edi, 2
or ebx, 2
imul ebx, edi
sub eax, ebx
add edx, dword [esi + 0xc]
add edx, eax
mov eax, dword [esi + 4]
add dl, 0x2d
mov byte [esi + ecx + 0x9c], dl
inc ecx
add eax, 2
cmp ecx, 0x13
jne 0x4312e0
movzx eax, byte [esi + 0x9c]
test al, al
je 0x43135d
lea ecx, [esi + 0x9d]
mov edx, dword [esi + 8]
nop
mov byte [edx], al
inc edx
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x431350
jmp 0x431360
mov edx, dword [esi + 8]
mov byte [edx], 0
movzx eax, byte [esi + 0x3f4]
test al, al
je 0x43138b
lea ecx, [esi + 0x3f5]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [edx], al
inc edx
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x431380
mov dword [esi + 8], edx
mov byte [edx], 0
mov dword [esi + 0x734], 0
mov dword [esi + 0x738], 0
mov eax, dword [0x451e54]
mov dword [esi + 4], eax
mov dword [esi + 0x9c], 0x99f69bf3
mov dword [esi + 0xa0], 0xa5c9a7e2
mov dword [esi + 0xa4], 0xa1d5a3d4
mov dword [esi + 0xa8], 0xad90af9d
mov dword [esi + 0xac], 0xa9c6ab9e
mov dword [esi + 0xb0], 0xb5c2b7dc
mov dword [esi + 0xb4], 0xb3b4
mov ecx, 0xf8f5b41c
mov eax, 0x70a4be4
nop
nop
nop
movzx edi, byte [esi + ecx + 0x70a4c80]
mov ebx, eax
xor ebx, 0x5026ad8
mov edx, eax
or edx, 0x2080127
and edx, ebx
lea ebx, [eax - 0x4000000]
or ebx, 0xfd426ad8
add ebx, ecx
or ebx, edx
xor edi, 0x2bd9527
mov edx, edi
and edx, ebx
add edi, ebx
add edx, edx
sub edi, edx
add edi, 0x23337b78
mov edx, edi
and edx, 0x20e4003a
xor edi, 0x60e4003a
lea ebx, [edi + edx*2]
inc ebx
mov edx, ebx
xor edx, 0x3a
and ebx, 0x45
add ebx, ebx
sub ebx, edx
mov byte [esi + ecx + 0x70a4c80], bl
inc ecx
dec eax
cmp ecx, 0xf8f5b438
jne 0x431400
push 0x800
push 0
lea edi, [esi + 0x9c]
push edi
call dword [esi + 4]
lea ebx, [esi + 0x734]
mov ecx, ebx
push eax
call fcn.00440c60
movzx eax, al
jmp dword [eax*4 + 0x44f800]
mov edi, dword [esi + 8]
jmp 0x4315aa
mov byte [esi + 0x9c], 0
mov dword [esi + 0x604], 0x101
push 0x4de9976
push dword [esi + 0x734]
call fcn.00444f40
add esp, 8
lea ecx, [esi + 0x604]
push ecx
push edi
call eax
mov dword [esi + 0x404], 0x62e2046
mov dword [esi + 0x408], 0x2fe0f4e5
mov word [esi + 0x40c], 0x5734
mov dword [esi + 0x40e], 0
mov ebx, 0x93
mov eax, 0x84bec6d
nop
movzx edx, byte [esi + eax - 0x84be869]
lea edi, [eax - 0x84bec00]
lea ecx, [ebx - 1]
or edi, ecx
add edi, ebx
mov ebx, edx
not ebx
or edi, ebx
or edx, eax
and edx, edi
lea edi, [edx - 0x297b9e22]
xor edi, 0x7f
lea edx, [edi + edx*2]
add edx, 0xad08c3bc
add dl, 0x82
mov byte [esi + eax - 0x84be869], dl
inc eax
mov ebx, ecx
cmp ecx, 0x85
jne 0x431500
movzx eax, byte [esi + 0x404]
test al, al
mov edi, dword [esi + 8]
je 0x43156d
lea ecx, [esi + 0x405]
lea ebx, [esi + 0x734]
mov byte [edi], al
inc edi
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x431560
jmp 0x431573
lea ebx, [esi + 0x734]
mov byte [edi], 0
movzx eax, byte [esi + 0x9c]
test al, al
je 0x43159b
lea ecx, [esi + 0x9d]
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 0x431590
mov byte [edi], 0
push dword [esi + 0x734]
call dword [0x451f58]
push 0x52d6fd7
push dword [0x453160]
call fcn.00444f40
add esp, 8
mov byte [esi + 0x404], 0
mov dword [esi + 0x64], 0x200
lea edx, [esi + 0x64]
lea ecx, [esi + 0x404]
push edx
push ecx
push 6
mov dword [esi + 0xc], eax
call eax
mov dword [esi + 0x9c], 0x751e0026
mov dword [esi + 0xa0], 0x4e514c41
mov dword [esi + 0xa4], 0x49167d4a
mov dword [esi + 0xa8], 0
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, eax
add cl, 0xb5
xor cl, byte [esi + eax + 0x9c]
add cl, 0x77
mov byte [esi + eax + 0x9c], cl
inc eax
cmp eax, 0x10
jne 0x431610
movzx eax, byte [esi + 0x9c]
test al, al
je 0x43164b
lea ecx, [esi + 0x9d]
nop
nop
nop
mov byte [edi], al
inc edi
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x431640
mov byte [edi], 0
movzx eax, byte [esi + 0x404]
test al, al
je 0x43166b
lea ecx, [esi + 0x405]
nop
mov byte [edi], al
inc edi
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x431660
mov dword [esi + 8], edi
mov byte [edi], 0
mov byte [esi + 0x734], 0
mov dword [esi + 0x60], 0x200
lea eax, [esi + 0x60]
push eax
push ebx
push 5
call dword [esi + 0xc]
mov dword [esi + 0x9c], 0xb222cca
mov dword [esi + 0xa0], 0x6952566b
mov dword [esi + 0xa4], 0x116f6469
mov dword [esi + 0xa8], 0xcd2c
mov byte [esi + 0xac], 0
mov eax, 0x3fff8dbb
mov ecx, 0x7fff1b76
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov dword [esi + 4], ecx
mov edi, dword [esi + 4]
and edi, 0x484e0a60
mov ebx, eax
xor ebx, 0xa4274730
mov edx, 0xba
sub edx, edi
sub edx, ebx
movzx ecx, byte [esi + eax - 0x3fff8d1f]
add ebx, edi
add ebx, 0xc0007245
lea edi, [ecx + ecx]
not edi
add edi, ecx
and edi, ebx
and edx, ecx
mov ebx, edi
xor ebx, edx
not edx
and edx, edi
add ebx, edi
mov ecx, dword [esi + 4]
sub ebx, edx
add bl, 0x10
mov byte [esi + eax - 0x3fff8d1f], bl
inc eax
add ecx, 2
cmp eax, 0x3fff8dcc
jne 0x4316d0
movzx eax, byte [esi + 0x9c]
test al, al
je 0x43174d
lea ecx, [esi + 0x9d]
mov edx, dword [esi + 8]
mov byte [edx], al
inc edx
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x431740
jmp 0x431750
mov edx, dword [esi + 8]
mov byte [edx], 0
movzx eax, byte [esi + 0x734]
test al, al
je 0x43177b
lea ecx, [esi + 0x735]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [edx], al
inc edx
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x431770
mov dword [esi + 8], edx
mov byte [edx], 0
mov byte [esi + 0x3e4], 0
mov dword [esi + 0x5c], 0x10
lea eax, [esi + 0x5c]
lea ecx, [esi + 0x3e4]
push eax
push ecx
push 4
call dword [esi + 0xc]
mov dword [esi + 0x9c], 0xcde2ec8a
mov dword [esi + 0xa0], 0xcec43121
mov dword [esi + 0xa4], 0xebf0dac7
mov byte [esi + 0xa8], 0x8c
mov dword [esi + 0xa9], 0
mov word [esi + 0xad], 0
mov eax, 0x20
mov ecx, 0xdf
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edi, byte [esi + eax + 0x7c]
mov edx, eax
xor edx, ecx
and edx, edi
xor edx, ecx
mov bl, 0x5f
sub bl, dl
mov byte [esi + eax + 0x7c], bl
inc eax
dec ecx
cmp eax, 0x33
jne 0x4317f0
movzx eax, byte [esi + 0x9c]
test al, al
je 0x43182d
lea ecx, [esi + 0x9d]
mov ebx, dword [esi + 8]
mov byte [ebx], al
inc ebx
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x431820
jmp 0x431830
mov ebx, dword [esi + 8]
mov byte [ebx], 0
movzx eax, byte [esi + 0x3e4]
test al, al
je 0x43185b
lea ecx, [esi + 0x3e5]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [ebx], al
inc ebx
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x431850
mov byte [ebx], 0
mov word [esi + 0x934], 0
push 0xfc327aac
push dword [0x453160]
call fcn.00444f40
add esp, 8
lea ecx, [esi + 0x934]
push 0x56
push ecx
call eax
mov dword [esi + 0x9c], 0xed1e0026
mov dword [esi + 0xa0], 0xc2cbcdd3
mov dword [esi + 0xa4], 0x3d1ced7
mov dword [esi + 0xa8], 0xcbe8
mov byte [esi + 0xac], 0
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, eax
add cl, 0xf5
xor cl, byte [esi + eax + 0x9c]
add cl, 0x37
mov byte [esi + eax + 0x9c], cl
inc eax
cmp eax, 0x11
jne 0x4318c0
movzx eax, byte [esi + 0x9c]
test al, al
je 0x4318fb
lea ecx, [esi + 0x9d]
nop
nop
nop
mov byte [ebx], al
inc ebx
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x4318f0
mov byte [ebx], 0
movzx edx, word [esi + 0x934]
mov edi, ebx
test dx, dx
lea eax, [esi + 0x934]
je 0x431a31
mov ecx, 0x55
mov edi, ebx
mov dword [esi + 8], ebx
movzx ebx, dx
lea edx, [eax + 2]
cmp bx, 0x7f
ja 0x431940
lea eax, [edi + 1]
mov byte [edi], bl
jmp 0x4319d0
cmp ebx, 0x7ff
ja 0x431970
cmp ecx, 2
jb 0x431970
mov eax, ebx
shr eax, 6
add al, 0xc0
mov byte [edi], al
and bl, 0x3f
or bl, 0x80
lea eax, [edi + 2]
mov byte [edi + 1], bl
jmp 0x4319d0
mov dword [esi + 4], eax
mov eax, ebx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4319ed
cmp ecx, 4
jb 0x4319ed
mov eax, dword [esi + 4]
movzx edx, word [eax + 2]
shl ebx, 0xa
lea eax, [ebx + edx]
add eax, 0xfca02400
mov ebx, eax
shr ebx, 0x12
add bl, 0xf0
mov byte [edi], bl
mov ebx, eax
shr ebx, 0xc
and bl, 0x3f
or bl, 0x80
mov byte [edi + 1], bl
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [edi + 2], al
mov ebx, dword [esi + 4]
add ebx, 4
and dl, 0x3f
or dl, 0x80
mov byte [edi + 3], dl
lea eax, [edi + 4]
mov edx, ebx
nop
nop
mov ebx, dword [esi + 8]
add ecx, edi
sub ecx, eax
mov edi, eax
mov eax, edx
movzx edx, word [eax]
test dx, dx
je 0x431a31
test ecx, ecx
jne 0x431920
jmp 0x431a31
movzx eax, ax
cmp eax, 0xdc00
jne 0x4319fe
mov eax, edx
mov ebx, dword [esi + 8]
jmp 0x4319db
cmp ecx, 3
jb 0x431a2d
mov eax, ebx
shr eax, 0xc
or al, 0xe0
mov byte [edi], al
mov eax, ebx
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [edi + 1], al
mov eax, ebx
not eax
or eax, 0x3f
add eax, ebx
add al, 0x81
mov ebx, eax
lea eax, [edi + 3]
mov byte [edi + 2], bl
jmp 0x4319d0
mov eax, edi
jmp 0x4319d0
mov byte [edi], 0
sub edi, ebx
mov dword [esi + 0x9c], 0x3616dcfe
mov dword [esi + 0xa0], 0x135b6966
mov dword [esi + 0xa4], 0x6260584a
mov dword [esi + 0xa8], 0xfa3b63
mov eax, 0xdbebd5fe
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ecx, byte [esi + eax + 0x24142a9e]
xor ecx, eax
mov edx, ecx
and edx, 9
xor ecx, 9
lea ecx, [ecx + edx*2]
inc cl
mov byte [esi + eax + 0x24142a9e], cl
inc eax
cmp eax, 0xdbebd60e
jne 0x431a70
add ebx, edi
movzx eax, byte [esi + 0x9c]
test al, al
je 0x431abb
lea ecx, [esi + 0x9d]
nop
nop
nop
nop
nop
nop
nop
mov byte [ebx], al
inc ebx
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x431ab0
mov edi, ebx
mov byte [ebx], 0
call fcn.00434e40
xor ecx, ecx
test eax, eax
setne cl
mov dword [esi + 8], eax
mov edx, eax
jmp dword [ecx*4 + 0x44f808]
lea ebx, [esi + 0x60a]
mov dword [edi], 0x202d090a
add edi, 4
mov dword [esi + 0xc], edx
mov eax, dword [edx + 8]
movzx edx, byte [eax]
test dl, dl
je 0x431bc0
inc eax
mov ecx, edi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [ecx], dl
inc ecx
movzx edx, byte [eax]
inc eax
test dl, dl
jne 0x431bb0
jmp 0x431bc2
mov ecx, edi
mov byte [ecx], 0
xor eax, eax
mov edx, dword [esi + 0xc]
cmp byte [edx + 4], 3
setb al
jmp dword [eax*4 + 0x44f810]
mov byte [ecx], 0x20
inc ecx
mov dword [esi + 4], ecx
mov eax, dword [esi + 0xc]
movzx eax, byte [eax + 4]
xor ecx, ecx
test al, al
sete cl
jmp dword [ecx*4 + 0x44f818]
xor ecx, ecx
cmp al, 1
sete cl
jmp dword [ecx*4 + 0x44f820]
mov dword [esi + 0x604], 0xd5d4dae7
mov word [esi + 0x608], 0xde1
mov byte [ebx + 2], 0
mov word [ebx], 0
xor edi, edi
nop
nop
movzx edx, byte [esi + edi + 0x604]
lea ebx, [edi + edi]
mov eax, ebx
and eax, 4
mov ecx, edi
xor ecx, 0xd461ebc2
add ecx, eax
lea eax, [edx + edx]
not eax
add eax, edx
or eax, ecx
not ecx
or ecx, edx
and eax, ecx
mov cl, 0x35
sub cl, al
mov byte [esi + edi + 0x604], cl
and ebx, 2
xor edi, 1
add edi, ebx
cmp edi, 9
jb 0x431d10
lea edi, [esi + 0x604]
jmp dword [0x44f83c]
mov dword [esi + 0x2c], 0xf2041aef
mov byte [esi + 0x30], 0x54
lea eax, [esi + 0x31]
mov word [eax + 4], 0
mov dword [eax], 0
mov edi, 0x6e
nop
nop
nop
nop
movzx eax, byte [esi + edi - 0x42]
lea ecx, [edi - 0x330d0900]
mov edx, edi
and edx, eax
or ecx, eax
not ecx
or ecx, edx
lea eax, [ecx + ecx]
not eax
add eax, ecx
mov ecx, eax
xor ecx, 0xbed526
mov edx, eax
or edx, 0xd9
and edx, ecx
or eax, 0xff412ad9
and ecx, eax
xor eax, edx
lea eax, [eax + ecx*2]
inc al
mov byte [esi + edi - 0x42], al
inc edi
cmp edi, 0x79
jne 0x431d80
lea edi, [esi + 0x2c]
jmp dword [0x44f83c]
rol byte [edx], cl
in al, dx
salc
inc edx
add byte [edx - 0x2e], al
inc edx
add byte [esi], bh
xlatb
inc edx
add byte [edx + edx*8 + 0x42], cl
add byte [eax - 0x2e], ch
inc edx
add byte [eax - 0x2e], dh
inc edx
add byte [ebx - 0x2e], bh
inc edx
add byte [edx + ebx*8 + 0x42], ah
add ah, dh
rol byte [edx], cl
add dl, bl
inc edx
add byte [esi - 0x26], bh
inc edx
add byte [eax - 0x51ffbd2c], ch
aad 0x42
add bl, ah
aad 0x42
add byte [eax - 0x2a], al
inc edx
add al, ah
rol byte [edx], 1
ror bl, cl
inc edx
add dh, bl
int3