Function at 0x427d5a
Capabilities:
Encode data using base64
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x154
mov eax, dword [0x47d00c]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
mov eax, dword [ebp + 0x14]
mov ecx, dword [ebp + 8]
mov dword [ebp - 0x70], eax
mov eax, dword [ebp + 0x18]
mov dword [ebp - 0x154], eax
mov eax, dword [ebp + 0x1c]
mov dword [ebp - 0x144], eax
mov eax, dword [ebp + 0x20]
mov dword [ebp - 0x148], eax
mov eax, dword [ebp + 0x24]
mov dword [ebp - 0x14c], eax
mov eax, dword [ebp + 0x28]
mov dword [ebp - 0x120], eax
mov eax, dword [ebp + 0x34]
mov edx, dword [ebp + 0xc]
mov dword [ebp - 0xa4], eax
xor eax, eax
mov dword [ebp - 0x88], eax
mov dword [ebp - 0x80], eax
mov dword [ebp - 0xe4], eax
mov dword [ebp - 0x138], ecx
mov ecx, dword [ecx]
mov eax, ecx
shr eax, 0x13
and eax, 1
mov dword [ebp - 0x150], edx
mov edx, dword [edx]
mov dword [ebp - 0x94], eax
mov eax, ecx
shr eax, 0x12
and eax, 1
mov dword [ebp - 0xb4], 0
mov dword [ebp - 0x118], eax
xor eax, 1
mov ebx, dword [ebp + 0x30]
mov esi, dword [ebp + 0x10]
mov dword [ebp - 0x124], eax
mov eax, ecx
shr eax, 3
mov dword [ebp - 0x74], esi
and eax, 1
mov esi, dword [esi]
mov dword [ebp - 0x6c], ebx
mov dword [ebp - 0xac], 0
mov dword [ebp - 0x98], ecx
mov dword [ebp - 0xfc], 0
mov dword [ebp - 0xf4], 0
mov dword [ebp - 0xd0], 0
mov dword [ebp - 0x68], edx
mov dword [ebp - 0x108], edx
mov dword [ebp - 0x10c], edx
mov dword [ebp - 0xb8], 0
mov dword [ebp - 0x104], 0
mov dword [ebp - 0x64], esi
mov dword [ebp - 0xc4], 0
mov dword [ebp - 0xe8], 0
mov dword [ebp - 0xc8], 0
mov dword [ebp - 0xdc], 0
mov dword [ebp - 0xcc], 0xfffffffe
mov dword [ebp - 0xd8], 0xfffffffe
mov dword [ebp - 0xbc], 0xfffffffe
mov dword [ebp - 0x8c], 0xfffffffe
mov dword [ebp - 0xf0], eax
mov dword [ebp - 0x130], 0xff
mov dword [ebp - 0x128], 0xfc00
mov dword [ebp - 0x12c], 0xdc00
mov dword [ebp - 0x134], 3
movzx edi, word [esi]
test edi, edi
jne 0x427731
mov eax, dword [ebp - 0x88]
test eax, eax
je 0x427731
mov esi, eax
xor eax, eax
mov dword [ebp - 0x64], esi
mov dword [ebp - 0x88], eax
movzx edi, word [esi]
mov ecx, dword [ebx + 0x2c]
mov eax, dword [ebx + 0x14]
lea eax, [eax + ecx*2]
add eax, 0xffffff38
cmp dword [ebp - 0xa4], 0
je 0x4277e7
cmp edx, eax
ja 0x42b5cd
mov eax, dword [ebp - 0x108]
cmp edx, eax
mov ebx, dword [ebp - 0xa4]
cmovb edx, eax
mov ecx, edx
mov dword [ebp - 0x68], edx
sub ecx, eax
mov eax, 0x7fffffeb
mov edx, dword [ebx]
sub eax, edx
sar ecx, 1
cmp eax, ecx
jb 0x42b33a
lea eax, [edx + ecx]
mov edx, dword [ebp - 0x80]
mov dword [ebx], eax
test edx, edx
je 0x4277d3
mov ecx, dword [ebp - 0x10c]
cmp edx, ecx
jbe 0x4277c5
mov ebx, dword [ebp - 0x68]
mov eax, ebx
sub eax, edx
and eax, 0xfffffffe
push eax
push edx
push ecx
call fcn.0043eca0
mov edx, dword [ebp - 0x80]
add esp, 0xc
mov ecx, dword [ebp - 0x10c]
sub edx, ecx
mov esi, dword [ebp - 0x64]
sar edx, 1
neg edx
mov dword [ebp - 0x80], ecx
lea ebx, [ebx + edx*2]
mov dword [ebp - 0x68], ebx
mov edx, dword [ebp - 0x68]
mov ecx, dword [ebp - 0x6c]
mov dword [ebp - 0x108], edx
jmp 0x4277f3
mov edx, dword [ebp - 0x10c]
mov ecx, dword [ebp - 0x6c]
mov dword [ebp - 0x68], edx
mov dword [ebp - 0x108], edx
jmp 0x4277f3
mov ecx, dword [ebp - 0x6c]
cmp dword [ecx + 0x24], eax
ja 0x42b5cd
cmp dword [ebp - 0xb8], 0
je 0x4279c8
test edi, edi
jne 0x427999
cmp esi, dword [ecx + 0x20]
jae 0x4279c8
mov eax, dword [ebp - 0xe4]
test eax, eax
je 0x42783e
cmp dword [ebp - 0xa4], 0
jne 0x427834
sub esi, dword [ecx + 0x1c]
sar esi, 1
sub si, word [eax + 2]
mov word [eax + 4], si
mov esi, dword [ebp - 0x64]
mov dword [ebp - 0xe4], 0
test byte [ebp - 0x98], 4
je case.0x427ba3.1
mov eax, 0x76
mov dword [ebp - 0xe4], edx
mov word [edx], ax
sub esi, dword [ecx + 0x1c]
sar esi, 1
mov word [edx + 2], si
mov dword [edx + 4], 0xff0000
movzx eax, byte [0x4551ee]
mov esi, dword [ebp - 0x64]
lea edx, [edx + eax*2]
mov dword [ebp - 0x68], edx
cmp dword [ebp - 0x94], 0
mov edx, 1
mov word [ebp - 0x34], di
je 0x4278bd
and edi, 0xfc00
cmp edi, 0xd800
jne 0x4278bd
mov ax, word [esi + 2]
add esi, 2
mov ecx, 0xfc00
and ax, cx
mov ecx, 0xdc00
cmp ax, cx
jne 0x4278bd
mov dword [ebp - 0x64], esi
mov edx, 2
mov ax, word [esi]
mov word [ebp - 0x32], ax
mov ebx, dword [ebp - 0x6c]
mov edi, dword [ebx + 0x24]
sub edi, dword [ebx + 0x14]
mov esi, dword [ebp - 0x68]
mov eax, dword [ebp - 0x98]
sar edi, 1
cmp dword [ebp - 0x94], 0
mov dword [ebp - 0x80], esi
mov dword [ebp - 0xd0], edi
je 0x42b1e7
test al, 8
je 0x42b1e9
movzx ecx, word [ebp - 0x34]
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x42791a
mov eax, dword [ebp - 0x32]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
add ecx, 0x10000
mov eax, ecx
test eax, eax
jns 0x427923
add eax, 0x7f
sar eax, 7
movzx eax, byte [eax + 0x4578c8]
shl eax, 7
and ecx, 0x8000007f
jns 0x42793d
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
movzx eax, word [eax*2 + 0x459ac8]
movzx eax, byte [eax*8 + 0x45624b]
test eax, eax
je 0x42b1e1
mov edx, dword [ebp - 0x68]
mov dword [edx], 0x90010
mov word [edx + 4], ax
add edx, 6
cmp dword [ebp - 0x8c], 0xfffffffe
mov dword [ebp - 0x68], edx
jne 0x429b73
mov esi, dword [ebp - 0x64]
add esi, 2
mov dword [ebp - 0xd8], 0xffffffff
mov dword [ebp - 0x8c], 0xffffffff
mov dword [ebp - 0x64], esi
jmp 0x427710
cmp edi, 0x5c
jne 0x427811
cmp word [esi + 2], 0x45
jne 0x427811
mov dword [ebp - 0xb8], 0
add esi, 2
mov ebx, dword [ebp - 0x6c]
add esi, 2
mov dword [ebp - 0x64], esi
jmp 0x427710
mov ebx, dword [ebp - 0x98]
and ebx, 0x80
je 0x427acb
nop word [eax + eax]
cmp edi, 0xff
ja 0x427a07
mov eax, dword [ecx + 0x10]
nop dword [eax + eax]
test byte [eax + edi], 1
je 0x427a07
add esi, 2
mov dword [ebp - 0x64], esi
movzx edi, word [esi]
cmp edi, 0xff
jbe 0x4279f0
cmp edi, 0x23
jne 0x427ac8
add esi, 2
mov dword [ebp - 0x64], esi
movzx edi, word [esi]
test di, di
je 0x427a59
nop
mov edx, dword [ecx + 0x58]
test edx, edx
je 0x427a5e
mov ecx, dword [ecx + 0x20]
cmp esi, ecx
jae 0x427a87
push dword [ebp - 0x94]
mov eax, dword [ebp - 0x6c]
add eax, 0x5c
push eax
push ecx
push edx
push esi
call fcn.0043ac80
mov esi, dword [ebp - 0x64]
add esp, 0x14
mov ecx, dword [ebp - 0x6c]
test eax, eax
je 0x427a8a
mov eax, dword [ecx + 0x5c]
lea esi, [esi + eax*2]
mov dword [ebp - 0x64], esi
movzx edi, word [esi]
jmp 0x4279e0
mov edx, dword [ecx + 0x5c]
mov ecx, dword [ecx + 0x20]
lea eax, [edx + edx]
sub ecx, eax
cmp esi, ecx
mov ecx, dword [ebp - 0x6c]
ja 0x427a8a
cmp di, word [ecx + 0x60]
jne 0x427a8a
cmp edx, 1
je 0x427a50
mov ax, word [esi + 2]
cmp ax, word [ecx + 0x62]
je 0x427a50
jmp 0x427a8a
mov ecx, dword [ebp - 0x6c]
add esi, 2
cmp dword [ebp - 0x94], 0
mov dword [ebp - 0x64], esi
je 0x427ab4
mov ax, word [esi]
mov edx, 0xfc00
and ax, dx
mov edx, 0xdc00
cmp ax, dx
jne 0x427ab4
add esi, 2
mov dword [ebp - 0x64], esi
movzx edi, word [esi]
test di, di
jne 0x427a20
movzx edi, word [esi]
jmp 0x4279e0
mov edx, dword [ebp - 0x68]
cmp edi, 0x2a
je 0x427b3c
cmp edi, 0x2b
je 0x427b3c
cmp edi, 0x3f
je 0x427b3c
cmp edi, 0x7b
jne 0x427aef
lea eax, [esi + 2]
push eax
call fcn.0042cbb0
add esp, 4
test eax, eax
jne 0x427b3c
mov eax, dword [ebp - 0x88]
xor ecx, ecx
cmp dword [ebp - 0xe4], ecx
je 0x427b47
test eax, eax
jne 0x427b47
mov eax, dword [ebp - 0xfc]
dec dword [ebp - 0xfc]
test eax, eax
jg 0x427b41
cmp dword [ebp - 0xa4], ecx
jne 0x427b34
mov eax, dword [ebp - 0x6c]
sub esi, dword [eax + 0x1c]
mov eax, dword [ebp - 0xe4]
sar esi, 1
sub si, word [eax + 2]
mov word [eax + 4], si
mov esi, dword [ebp - 0x64]
mov dword [ebp - 0xe4], ecx
jmp 0x427b41
mov ecx, 1
mov eax, dword [ebp - 0x88]
test byte [ebp - 0x98], 4
je 0x427b90
test ecx, ecx
jne 0x427b90
test eax, eax
jne 0x427b90
mov eax, 0x76
mov dword [ebp - 0xe4], edx
mov word [edx], ax
mov edx, dword [ebp - 0x6c]
mov eax, dword [ebp - 0x68]
sub esi, dword [edx + 0x1c]
sar esi, 1
mov word [eax + 2], si
mov esi, eax
mov dword [esi + 4], 0xff0000
movzx eax, byte [0x4551ee]
lea esi, [esi + eax*2]
mov dword [ebp - 0x68], esi
mov esi, dword [ebp - 0x64]
jmp 0x427b93
mov edx, dword [ebp - 0x6c]
cmp edi, 0x7c
ja case.0x427ba3.1
movzx eax, byte [edi + 0x42b624]
jmp dword [eax*4 + 0x42b5f0]
cmp esi, dword [edx + 0x20]
jb case.0x427ba3.1
mov ecx, dword [ebp - 0x154]
mov eax, dword [ebp - 0xdc]
mov edi, dword [ebp - 0x74]
mov edx, dword [ebp - 0xa4]
mov dword [ecx], eax
mov ecx, dword [ebp - 0x144]
mov eax, dword [ebp - 0x8c]
mov dword [ecx], eax
mov ecx, dword [ebp - 0x148]
mov eax, dword [ebp - 0xc8]
mov dword [ecx], eax
mov ecx, dword [ebp - 0x14c]
mov eax, dword [ebp - 0xbc]
mov dword [ecx], eax
mov eax, dword [ebp - 0x150]
mov ecx, dword [ebp - 0x68]
mov dword [eax], ecx
mov dword [edi], esi
test edx, edx
je 0x42b5b7
sub ecx, dword [ebp - 0x108]
mov ebx, 0x7fffffeb
mov eax, dword [edx]
sub ebx, eax
sar ecx, 1
cmp ebx, ecx
jae 0x42b5b3
mov eax, dword [ebp - 0x70]
mov dword [eax], 0x78
jmp 0x42b5d9
test dword [ebp - 0x98], 0x400
mov dword [ebp - 0x80], 0
je 0x427c82
cmp dword [ebp - 0x8c], 0xfffffffe
jne 0x427c60
mov dword [ebp - 0x8c], 0xffffffff
mov dword [ebp - 0xd8], 0xffffffff
mov edx, dword [ebp - 0x68]
mov eax, 0x1c
mov ebx, dword [ebp - 0x6c]
mov word [edx], ax
add edx, 2
mov esi, dword [ebp - 0x64]
add esi, 2
mov dword [ebp - 0x68], edx
mov dword [ebp - 0x64], esi
jmp 0x427710
mov edx, dword [ebp - 0x68]
mov eax, 0x1b
mov ebx, dword [ebp - 0x6c]
mov word [edx], ax
add edx, 2
mov esi, dword [ebp - 0x64]
add esi, 2
mov dword [ebp - 0x68], edx
mov dword [ebp - 0x64], esi
jmp 0x427710
mov eax, dword [ebp - 0x98]
mov edx, dword [ebp - 0x68]
and eax, 0x400
mov ebx, dword [ebp - 0x6c]
neg eax
mov dword [ebp - 0x80], 0
sbb eax, eax
neg eax
add eax, 0x19
mov word [edx], ax
add edx, 2
mov esi, dword [ebp - 0x64]
add esi, 2
mov dword [ebp - 0x68], edx
mov dword [ebp - 0x64], esi
jmp 0x427710
mov edi, dword [ebp - 0x8c]
mov eax, 0xffffffff
mov ebx, dword [ebp - 0x6c]
cmp edi, 0xfffffffe
mov edx, dword [ebp - 0x68]
cmove edi, eax
mov dword [ebp - 0x80], edx
mov eax, dword [ebp - 0xdc]
mov ecx, dword [ebx + 0x24]
sub ecx, dword [ebx + 0x14]
mov dword [ebp - 0xe8], eax
mov eax, dword [ebp - 0xc8]
mov dword [ebp - 0xc4], eax
mov eax, dword [ebp - 0xbc]
mov dword [ebp - 0xcc], eax
mov eax, dword [ebp - 0x98]
shr eax, 5
and eax, 1
sar ecx, 1
or eax, 0xc
mov dword [ebp - 0x8c], edi
mov word [edx], ax
add edx, 2
mov esi, dword [ebp - 0x64]
add esi, 2
mov dword [ebp - 0xd8], edi
mov dword [ebp - 0xd0], ecx
mov dword [ebp - 0x68], edx
mov dword [ebp - 0x64], esi
jmp 0x427710
push 6
push 0x454e68
add esi, 2
push esi
call fcn.0043af40
add esp, 0xc
test eax, eax
mov eax, dword [ebp - 0x64]
jne 0x427d96
mov ebx, dword [ebp - 0x6c]
add eax, 0xe
mov esi, str._b__w_
mov dword [ebp - 0x88], eax
sub esi, 2
mov edx, dword [ebp - 0x68]
add esi, 2
mov dword [ebp - 0x64], esi
jmp 0x427710
push 6
add eax, 2
push str._:_:__
push eax
call fcn.0043af40
mov ebx, dword [ebp - 0x6c]
add esp, 0xc
test eax, eax
jne 0x427dd2
mov eax, dword [ebp - 0x64]
mov esi, str._b___w_
mov edx, dword [ebp - 0x68]
add eax, 0xe
sub esi, 2
mov dword [ebp - 0x88], eax
add esi, 2
mov dword [ebp - 0x64], esi
jmp 0x427710
mov eax, dword [ebp - 0x68]
mov esi, dword [ebp - 0x64]
mov dword [ebp - 0x80], eax
mov eax, dword [ebx + 0x24]
sub eax, dword [ebx + 0x14]
sar eax, 1
mov dword [ebp - 0xd0], eax
movzx eax, word [esi + 2]
cmp eax, 0x3a
je 0x427dfc
cmp eax, 0x2e
je 0x427dfc
cmp eax, 0x3d
jne 0x427e17
lea eax, [ebp - 0xd4]
push eax
push esi
call fcn.004274f0
mov esi, dword [ebp - 0x64]
add esp, 8
test eax, eax
jne 0x42b3be
xor ecx, ecx
mov dword [ebp - 0x90], ecx
nop
add esi, 2
mov dword [ebp - 0x64], esi
movzx edi, word [esi]
cmp edi, 0x5c
jne 0x427e59
add esi, 2
cmp word [esi], 0x45
je 0x427e20
push 3
push 0x454e78
push esi
call fcn.0043af40
mov esi, dword [ebp - 0x64]
add esp, 0xc
test eax, eax
jne 0x427ec4
mov ecx, dword [ebp - 0x90]
add esi, 6
jmp 0x427e20
test ecx, ecx
jne 0x427e67
cmp edi, 0x5e
jne 0x427e67
lea ecx, [edi - 0x5d]
jmp 0x427e19
cmp edi, 0x5d
jne 0x427ec4
test byte [ebx + 0x40], 1
je 0x427ec4
mov edx, dword [ebp - 0x68]
test ecx, ecx
mov ecx, 0xd
mov eax, 0x9f
cmovne eax, ecx
mov ecx, dword [ebp - 0x8c]
mov word [edx], ax
add edx, 2
mov esi, dword [ebp - 0x64]
cmp ecx, 0xfffffffe
mov eax, 0xffffffff
mov dword [ebp - 0x68], edx
cmove ecx, eax
mov eax, dword [ebp - 0xdc]
add esi, 2
mov dword [ebp - 0x8c], ecx
mov dword [ebp - 0xe8], eax
mov dword [ebp - 0xd8], ecx
mov dword [ebp - 0x64], esi
jmp 0x427710
xor eax, eax
xor ebx, ebx
mov dword [ebp - 0x9c], eax
xorps xmm0, xmm0
mov dword [ebp - 0xa8], eax
mov eax, dword [ebp - 0x68]
add eax, 6
mov dword [ebp - 0x84], ebx
mov edx, eax
mov dword [ebp - 0xa0], eax
xor eax, eax
mov dword [ebp - 0x78], edx
mov dword [ebp - 0xcc], eax
mov dword [ebp - 0x7c], eax
mov eax, dword [ebp - 0xb8]
movups xmmword [ebp - 0x24], xmm0
movups xmmword [ebp - 0x14], xmm0
mov ecx, dword [ebp - 0x6c]
test edi, edi
jne 0x427f17
cmp esi, dword [ecx + 0x20]
jae 0x42b348
cmp dword [ebp - 0x94], 0
je 0x427f65
mov eax, edi
and eax, 0xfc00
cmp eax, 0xd800
jne 0x427f5f
movzx edi, word [esi]
mov eax, edi
and eax, 0xfc00
cmp eax, 0xd800
jne 0x427f5f
movzx eax, word [esi + 2]
add esi, 2
and edi, 0x3ff
mov dword [ebp - 0x64], esi
and eax, 0x3ff
shl edi, 0xa
or edi, eax
add edi, 0x10000
mov eax, dword [ebp - 0xb8]
test eax, eax
je 0x427f8f
cmp edi, 0x5c
jne 0x4281df
cmp word [esi + 2], 0x45
jne 0x4281df
mov dword [ebp - 0xb8], 0
add esi, 2
jmp 0x4286da
cmp edi, 0x5b
jne 0x4281a0
movzx eax, word [esi + 2]
cmp eax, 0x3a
je 0x427faf
cmp eax, 0x2e
je 0x427faf
cmp eax, 0x3d
jne 0x4281df
lea eax, [ebp - 0xd4]
push eax
push esi
call fcn.004274f0
mov esi, dword [ebp - 0x64]
add esp, 8
test eax, eax
je 0x4281df
mov edi, dword [ecx + 0xc]
xor ebx, ebx
cmp word [esi + 2], 0x3a
jne 0x42b367
add esi, 4
mov dword [ebp - 0x64], esi
cmp word [esi], 0x5e
jne 0x427ff7
mov ebx, 1
add esi, 2
mov dword [ebp - 0x9c], ebx
mov dword [ebp - 0x64], esi
mov eax, dword [ebp - 0xd4]
sub eax, esi
sar eax, 1
push eax
push esi
call fcn.004274a0
mov ecx, eax
add esp, 8
test ecx, ecx
js 0x42b356
mov eax, dword [ebp - 0x98]
test al, 8
je 0x428027
xor edx, edx
cmp ecx, 2
cmovle ecx, edx
test eax, 0x20000
je 0x4280ef
mov eax, ebx
neg eax
sbb eax, eax
and eax, 0xe
add eax, ecx
mov esi, dword [eax*4 + 0x47d108]
test esi, esi
je 0x428068
mov eax, dword [ebp - 0xd4]
mov ebx, dword [ebp - 0x84]
add eax, 2
mov edx, dword [ebp - 0x78]
add esi, 0xfffffffe
mov dword [ebp - 0x88], eax
jmp 0x4286e0
mov eax, ecx
sub eax, 8
je 0x428085
sub eax, 1
je 0x42807e
sub eax, 1
jne 0x4280ef
lea edx, [eax + 0xd]
jmp 0x42808a
mov edx, 0xc
jmp 0x42808a
mov edx, 0xb
mov eax, dword [ebp - 0xa0]
xor ecx, ecx
test ebx, ebx
mov ebx, dword [ebp - 0x84]
setne cl
add ecx, 3
mov word [eax], cx
xor ecx, ecx
mov eax, dword [ebp - 0xa0]
add eax, 2
mov dword [ebp - 0xa0], eax
mov word [eax], dx
mov eax, dword [ebp - 0xa0]
mov edx, dword [ebp - 0x78]
add eax, 2
mov dword [ebp - 0xa0], eax
mov word [eax], cx
mov ecx, 1
mov esi, dword [ebp - 0xd4]
add dword [ebp - 0xa0], 2
add esi, 2
mov eax, dword [ebp - 0x88]
mov dword [ebp - 0x7c], ecx
jmp 0x4286e3
lea ecx, [ecx + ecx*2]
mov eax, dword [ecx*4 + 0x454c68]
mov esi, dword [ecx*4 + 0x454c70]
movups xmm0, xmmword [eax + edi]
movups xmmword [ebp - 0x54], xmm0
movups xmm0, xmmword [eax + edi + 0x10]
mov eax, dword [ecx*4 + 0x454c6c]
movups xmmword [ebp - 0x44], xmm0
test eax, eax
js 0x428143
xor ecx, ecx
lea edx, [eax + edi]
test esi, esi
js 0x428134
mov al, byte [edx + ecx]
or byte [ebp + ecx - 0x54], al
inc ecx
cmp ecx, 0x20
jb 0x428125
jmp 0x428143
mov al, byte [edx + ecx]
not al
and byte [ebp + ecx - 0x54], al
inc ecx
cmp ecx, 0x20
jb 0x428134
test esi, esi
jns 0x428149
neg esi
cmp esi, 1
jne 0x428154
and byte [ebp - 0x53], 0xc3
jmp 0x42815d
cmp esi, 2
jne 0x42815d
and byte [ebp - 0x49], 0x7f
xor ecx, ecx
test ebx, ebx
je 0x428175
mov al, byte [ebp + ecx - 0x54]
not al
or byte [ebp + ecx - 0x24], al
inc ecx
cmp ecx, 0x20
jb 0x428163
jmp 0x428183
mov al, byte [ebp + ecx - 0x54]
or byte [ebp + ecx - 0x24], al
inc ecx
cmp ecx, 0x20
jb 0x428175
mov esi, dword [ebp - 0xd4]
mov ebx, 1
add esi, 2
mov dword [ebp - 0xcc], 2
jmp 0x4286d1
cmp edi, 0x5c
jne 0x4281df
push ecx
push 1
push dword [ebp - 0x98]
lea eax, [ebp - 0x110]
push dword [ebp - 0x70]
push eax
lea eax, [ebp - 0x64]
push eax
call fcn.00426d60
mov edx, dword [ebp - 0x70]
add esp, 0x18
mov edi, eax
cmp dword [edx], 0
jne 0x42b35f
test edi, edi
jne 0x428223
mov edi, dword [ebp - 0x110]
mov esi, dword [ebp - 0x64]
cmp word [esi + 2], 0x5c
jne 0x428204
cmp word [esi + 4], 0x45
jne 0x428204
add esi, 4
mov dword [ebp - 0xb8], 0
mov dword [ebp - 0x64], esi
cmp word [esi + 2], 0x5c
je 0x4281e6
mov ecx, esi
cmp edi, 0xd
je 0x428214
cmp edi, 0xa
jne 0x4284f0
mov edx, dword [ebp - 0x6c]
or dword [edx + 0x44], 0x800
jmp 0x4284f3
cmp edi, 5
jne 0x42822f
mov edi, 8
jmp 0x4281dc
cmp edi, 0xc
je 0x42b383
cmp edi, 0x1a
jne 0x428265
mov esi, dword [ebp - 0x64]
cmp word [esi + 2], 0x5c
jne 0x428256
cmp word [esi + 4], 0x45
jne 0x428256
add esi, 4
jmp 0x4286d7
mov dword [ebp - 0xb8], 1
jmp 0x4286d7
cmp edi, 0x19
je 0x4282ce
mov ecx, dword [ebp - 0x6c]
lea eax, [edi - 6]
add dword [ebp - 0xcc], 2
inc ebx
mov dword [ebp - 0x84], ebx
mov esi, dword [ecx + 0xc]
cmp eax, 0x1c
ja case.0x428291.12
movzx eax, byte [eax + 0x42b6d8]
jmp dword [eax*4 + 0x42b6a4]
mov esi, dword [edi*4 + 0x47d07c]
mov eax, dword [ebp - 0x64]
sub esi, 2
mov edx, dword [ebp - 0x78]
dec ebx
mov dword [ebp - 0x88], eax
mov dword [ebp - 0x84], ebx
jmp 0x4286e0
xor ecx, ecx
nop dword [eax]
mov al, byte [esi + ecx + 0x40]
or byte [ebp + ecx - 0x24], al
inc ecx
cmp ecx, 0x20
jb 0x4282c0
mov esi, dword [ebp - 0x64]
jmp 0x4286d7
mov dword [ebp - 0x9c], 1
xor ecx, ecx
mov al, byte [esi + ecx + 0x40]
not al
or byte [ebp + ecx - 0x24], al
inc ecx
cmp ecx, 0x20
jb 0x4282e2
mov esi, dword [ebp - 0x64]
jmp 0x4286d7
xor ecx, ecx
nop dword [eax]
mov al, byte [esi + ecx + 0xa0]
or byte [ebp + ecx - 0x24], al
inc ecx
cmp ecx, 0x20
jb 0x428300
mov esi, dword [ebp - 0x64]
jmp 0x4286d7
mov dword [ebp - 0x9c], 1
xor ecx, ecx
nop word [eax + eax]
mov al, byte [esi + ecx + 0xa0]
not al
or byte [ebp + ecx - 0x24], al
inc ecx
cmp ecx, 0x20
jb 0x428330
mov esi, dword [ebp - 0x64]
jmp 0x4286d7
lea eax, [ebp - 0x24]
xor edx, edx
sub esi, eax
lea ecx, [ebp - 0x24]
add ecx, edx
inc edx
mov al, byte [esi + ecx]
or byte [ecx], al
cmp edx, 0x20
jb 0x428352
mov esi, dword [ebp - 0x64]
jmp 0x4286d7
lea eax, [ebp - 0x24]
mov dword [ebp - 0x9c], 1
xor edx, edx
sub esi, eax
nop dword [eax + eax]
lea ecx, [ebp - 0x24]
add ecx, edx
inc edx
mov al, byte [esi + ecx]
not al
or byte [ecx], al
cmp edx, 0x20
jb 0x428380
mov esi, dword [ebp - 0x64]
jmp 0x4286d7
push 0xffffffffffffffff
push 0x455268
push ecx
push dword [ebp - 0x98]
lea eax, [ebp - 0xa0]
push eax
lea eax, [ebp - 0x24]
push eax
call fcn.00426540
mov esi, dword [ebp - 0x64]
add esp, 0x18
jmp 0x4286d7
push 0x455268
push ecx
push dword [ebp - 0x98]
lea eax, [ebp - 0xa0]
push eax
lea eax, [ebp - 0x24]
push eax
call fcn.004266b0
mov esi, dword [ebp - 0x64]
add esp, 0x14
jmp 0x4286d7
push 0xffffffffffffffff
push 0x4552b8
push ecx
push dword [ebp - 0x98]
lea eax, [ebp - 0xa0]
push eax
lea eax, [ebp - 0x24]
push eax
call fcn.00426540
mov esi, dword [ebp - 0x64]
add esp, 0x18
jmp 0x4286d7
push 0x4552b8
push ecx
push dword [ebp - 0x98]
lea eax, [ebp - 0xa0]
push eax
lea eax, [ebp - 0x24]
push eax
call fcn.004266b0
mov esi, dword [ebp - 0x64]
add esp, 0x14
jmp 0x4286d7
push ecx
push edx
lea eax, [ebp - 0xc4]
mov dword [ebp - 0xe0], 0
push eax
lea eax, [ebp - 0xe0]
mov dword [ebp - 0xc4], 0
push eax
lea eax, [ebp - 0x140]
push eax
lea eax, [ebp - 0x64]
push eax
call fcn.0042c920
add esp, 0x18
test eax, eax
je 0x42b35f
mov eax, dword [ebp - 0xa0]
xor ecx, ecx
cmp edi, 0x10
mov edx, dword [ebp - 0x78]
sete cl
sub ecx, dword [ebp - 0x140]
neg ecx
sbb ecx, ecx
add ecx, 4
mov word [eax], cx
mov ecx, dword [ebp - 0xa0]
movzx eax, word [ebp - 0xe0]
add ecx, 2
mov dword [ebp - 0xa0], ecx
mov word [ecx], ax
mov ecx, dword [ebp - 0xa0]
movzx eax, word [ebp - 0xc4]
add ecx, 2
mov dword [ebp - 0xa0], ecx
mov word [ecx], ax
mov ecx, 1
add dword [ebp - 0xa0], 2
dec ebx
mov esi, dword [ebp - 0x64]
mov eax, dword [ebp - 0x88]
mov dword [ebp - 0x7c], ecx
mov dword [ebp - 0x84], ebx
jmp 0x4286e3
mov edx, dword [ebp - 0x6c]
cmp dword [ebp - 0xb8], 0
jne 0x428683
cmp word [esi + 2], 0x2d
jne 0x428683
add esi, 4
mov dword [ebp - 0x64], esi
cmp word [esi], 0x5c
jne 0x428564
cmp word [esi + 2], 0x45
jne 0x42852c
add esi, 4
mov dword [ebp - 0x64], esi
cmp word [esi], 0x5c
je 0x428517
jmp 0x428564
cmp word [esi], 0x5c
jne 0x428564
cmp word [esi + 2], 0x51
jne 0x428564
add esi, 4
mov dword [ebp - 0x64], esi
cmp word [esi], 0x5c
jne 0x42855a
cmp word [esi + 2], 0x45
jne 0x42855a
add esi, 4
mov dword [ebp - 0x64], esi
cmp word [esi], 0x5c
je 0x428532
jmp 0x428564
mov dword [ebp - 0xb8], 1
movzx eax, word [esi]
test ax, ax
je 0x42867e
cmp dword [ebp - 0xb8], 0
jne 0x428582
cmp eax, 0x5d
je 0x42867e
cmp dword [ebp - 0x94], 0
mov ecx, eax
mov dword [ebp - 0xc4], ecx
je 0x4285c5
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4285c5
movzx eax, word [esi + 2]
add esi, 2
and ecx, 0x3ff
mov dword [ebp - 0x64], esi
shl ecx, 0xa
and eax, 0x3ff
or ecx, eax
add ecx, 0x10000
mov dword [ebp - 0xc4], ecx
cmp dword [ebp - 0xb8], 0
jne 0x428649
cmp ecx, 0x5c
jne 0x428616
mov esi, dword [ebp - 0x70]
lea eax, [ebp - 0xc4]
push edx
push 1
push dword [ebp - 0x98]
push esi
push eax
lea eax, [ebp - 0x64]
push eax
call fcn.00426d60
add esp, 0x18
cmp dword [esi], 0
jne 0x42b35f
test eax, eax
je 0x42860e
cmp eax, 5
jne 0x42b391
lea ecx, [eax + 3]
jmp 0x428646
mov ecx, dword [ebp - 0xc4]
jmp 0x428646
cmp ecx, 0x5b
jne 0x428649
movzx eax, word [esi + 2]
cmp eax, 0x3a
je 0x42862e
cmp eax, 0x2e
je 0x42862e
cmp eax, 0x3d
jne 0x428649
lea eax, [ebp - 0xd4]
push eax
push esi
call fcn.004274f0
add esp, 8
test eax, eax
jne 0x42b39f
mov esi, dword [ebp - 0x64]
cmp ecx, edi
jb 0x42b3b0
je 0x428683
mov dword [ebp - 0xcc], 2
cmp ecx, 0xd
je 0x428667
cmp ecx, 0xa
jne 0x428676
mov eax, dword [ebp - 0x6c]
push ecx
push edi
push eax
or dword [eax + 0x44], 0x800
jmp 0x4286b3
mov eax, dword [ebp - 0x6c]
push ecx
push edi
push eax
jmp 0x4286b3
mov esi, ecx
mov dword [ebp - 0x64], esi
mov eax, dword [ebp - 0xcc]
cmp eax, 2
jge 0x428695
inc eax
mov dword [ebp - 0xcc], eax
cmp dword [ebp - 0xb8], 0
jne 0x4286ae
cmp eax, 1
jne 0x4286ae
cmp word [esi + 2], 0x5d
je 0x428857
push edi
push edi
push dword [ebp - 0x6c]
push dword [ebp - 0x98]
lea eax, [ebp - 0xa0]
push eax
lea eax, [ebp - 0x24]
push eax
call fcn.00426970
mov esi, dword [ebp - 0x64]
add esp, 0x18
add ebx, eax
mov dword [ebp - 0x84], ebx
mov edx, dword [ebp - 0x78]
mov eax, dword [ebp - 0x88]
mov ecx, dword [ebp - 0x7c]
add esi, 2
mov dword [ebp - 0x64], esi
movzx edi, word [esi]
test edi, edi
jne 0x428703
test eax, eax
je 0x428703
lea esi, [eax + 2]
mov dword [ebp - 0x88], edi
mov dword [ebp - 0x64], esi
movzx edi, word [esi]
mov eax, dword [ebp - 0xa0]
cmp eax, edx
jbe 0x42873b
cmp dword [ebp - 0xa4], 0
mov ebx, dword [ebp - 0x84]
mov dword [ebp - 0xa8], 1
je 0x42873b
mov ecx, dword [ebp - 0xa4]
sub eax, edx
sar eax, 1
mov dword [ebp - 0xa0], edx
add dword [ecx], eax
mov ecx, dword [ebp - 0x7c]
mov eax, dword [ebp - 0xb8]
cmp edi, 0x5d
jne 0x427f07
test eax, eax
jne 0x427f07
mov edi, dword [ebp - 0x8c]
mov eax, 0xffffffff
mov edx, dword [ebp - 0x9c]
cmp edi, 0xfffffffe
cmove edi, eax
cmp dword [ebp - 0xa8], 0
mov eax, dword [ebp - 0xdc]
mov dword [ebp - 0xe8], eax
mov eax, dword [ebp - 0xc8]
mov dword [ebp - 0xc4], eax
mov eax, dword [ebp - 0xbc]
mov dword [ebp - 0x8c], edi
mov dword [ebp - 0xd8], edi
mov dword [ebp - 0xcc], eax
je 0x4289e9
test edx, edx
je 0x4287ba
test dword [ebp - 0x98], 0x20000
je 0x4289e9
mov eax, dword [ebp - 0xa0]
xor edx, edx
mov edi, dword [ebp - 0x68]
mov esi, dword [ebp - 0x90]
mov word [eax], dx
mov eax, 0x70
add dword [ebp - 0xa0], 2
mov word [edi], ax
xor eax, eax
test esi, esi
setne al
movzx eax, ax
mov word [edi + 4], ax
test ecx, ecx
je 0x4287f6
or eax, 4
mov word [edi + 4], ax
test ebx, ebx
jle 0x4289c1
or word [edi + 4], 2
add edi, 6
mov eax, dword [ebp - 0xa0]
sub eax, edi
and eax, 0xfffffffe
push eax
lea eax, [edi + 0x20]
push edi
push eax
call fcn.0043eca0
add esp, 0xc
test esi, esi
je 0x42883a
mov eax, dword [ebp - 0x7c]
test eax, eax
jne 0x42883a
xor ecx, ecx
nop dword [eax]
not byte [ebp + ecx - 0x24]
inc ecx
cmp ecx, 0x20
jb 0x428830
movups xmm0, xmmword [ebp - 0x24]
movups xmmword [edi], xmm0
movups xmm0, xmmword [ebp - 0x14]
movups xmmword [edi + 0x10], xmm0
mov eax, dword [ebp - 0xa0]
add eax, 0x20
jmp 0x4289c7
mov eax, dword [ebp - 0xc8]
add esi, 2
mov dword [ebp - 0x64], esi
mov esi, dword [ebp - 0x90]
mov dword [ebp - 0xc4], eax
mov eax, dword [ebp - 0xbc]
mov dword [ebp - 0xcc], eax
test esi, esi
je 0x42898e
mov eax, dword [ebp - 0x8c]
mov ecx, 0xffffffff
mov ebx, dword [ebp - 0x94]
cmp eax, 0xfffffffe
cmove eax, ecx
mov ecx, dword [ebp - 0xdc]
mov dword [ebp - 0xe8], ecx
mov ecx, dword [ebp - 0x98]
mov dword [ebp - 0x8c], eax
mov dword [ebp - 0xd8], eax
test ebx, ebx
je 0x428925
test cl, 8
je 0x428928
mov eax, edi
test eax, eax
jns 0x4288ca
add eax, 0x7f
sar eax, 7
movzx ecx, byte [eax + 0x4578c8]
mov eax, edi
shl ecx, 7
and eax, 0x8000007f
jns 0x4288e5
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x459ac8]
movzx eax, byte [eax*8 + 0x45624b]
test eax, eax
je 0x42891f
mov edx, dword [ebp - 0x68]
mov ebx, dword [ebp - 0x6c]
mov dword [edx], 0x9000f
mov word [edx + 4], ax
add edx, 6
mov esi, dword [ebp - 0x64]
add esi, 2
mov dword [ebp - 0x68], edx
mov dword [ebp - 0x64], esi
jmp 0x427710
mov ecx, dword [ebp - 0x98]
test cl, 8
mov edx, dword [ebp - 0x68]
mov eax, 0
setne al
add eax, 0x1f
mov word [edx], ax
add edx, 2
mov dword [ebp - 0x68], edx
test ebx, ebx
je 0x42896f
cmp edi, 0xffff
jbe 0x42896f
push edx
push edi
call fcn.0043ae00
mov edx, dword [ebp - 0x68]
add esp, 8
mov esi, dword [ebp - 0x64]
mov ebx, dword [ebp - 0x6c]
add esi, 2
mov dword [ebp - 0x64], esi
lea edx, [edx + eax*2]
mov dword [ebp - 0x68], edx
jmp 0x427710
mov ebx, dword [ebp - 0x6c]
mov eax, 1
mov word [edx], di
mov esi, dword [ebp - 0x64]
add esi, 2
lea edx, [edx + eax*2]
mov dword [ebp - 0x64], esi
mov dword [ebp - 0x68], edx
jmp 0x427710
cmp dword [ebp - 0x94], 0
je 0x4289b3
cmp edi, 0xffff
jbe 0x4289b3
lea eax, [ebp - 0x34]
push eax
push edi
call fcn.0043ae00
add esp, 8
mov edx, eax
jmp 0x4278bd
mov word [ebp - 0x34], di
mov edx, 1
jmp 0x4278bd
mov eax, dword [ebp - 0xa0]
mov edx, dword [ebp - 0x80]
mov ebx, dword [ebp - 0x6c]
mov dword [ebp - 0x68], eax
sub eax, edx
sar eax, 1
mov word [edx + 2], ax
mov esi, dword [ebp - 0x64]
mov edx, dword [ebp - 0x68]
add esi, 2
mov dword [ebp - 0x64], esi
jmp 0x427710
mov esi, dword [ebp - 0x90]
xor eax, eax
cmp esi, edx
mov edx, dword [ebp - 0x68]
setne al
add eax, 0x6e
cmp dword [ebp - 0xa4], 0
mov word [edx], ax
jne 0x428a2a
test esi, esi
je 0x428a1a
xor ecx, ecx
nop
not byte [ebp + ecx - 0x24]
inc ecx
cmp ecx, 0x20
jb 0x428a10
movups xmm0, xmmword [ebp - 0x24]
movups xmmword [edx + 2], xmm0
movups xmm0, xmmword [ebp - 0x14]
movups xmmword [edx + 0x12], xmm0
add edx, 0x22
mov dword [ebp - 0x68], edx
mov esi, dword [ebp - 0x64]
mov ebx, dword [ebp - 0x6c]
add esi, 2
mov dword [ebp - 0x64], esi
jmp 0x427710
test ecx, ecx
je case.0x427ba3.1
push dword [ebp - 0x70]
lea eax, [ebp - 0xac]
add esi, 2
push eax
lea eax, [ebp - 0xb4]
push eax
push esi
call fcn.0042dc00
mov esi, eax
add esp, 0x10
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x64], esi
cmp dword [eax], 0
jne 0x42b5d6
mov edx, dword [ebp - 0xac]
mov edi, dword [ebp - 0xb4]
jmp 0x428aac
xor edi, edi
or edx, 0xffffffff
jmp 0x428a9d
mov edi, 1
or edx, 0xffffffff
jmp 0x428a9d
xor edi, edi
mov edx, 1
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0xb4], edi
mov dword [ebp - 0xac], edx
mov ecx, dword [ebp - 0x80]
test ecx, ecx
je 0x42b3e3
test edi, edi
jne 0x428aeb
mov eax, dword [ebp - 0xe8]
mov dword [ebp - 0xdc], eax
mov eax, dword [ebp - 0xd8]
mov dword [ebp - 0x8c], eax
mov eax, dword [ebp - 0xc4]
mov dword [ebp - 0xc8], eax
mov eax, dword [ebp - 0xcc]
mov dword [ebp - 0xbc], eax
cmp edi, edx
mov dword [ebp - 0xc0], 0
mov eax, 2
mov dword [ebp - 0x9c], 0
cmove eax, dword [ebp - 0xc0]
mov dword [ebp - 0xec], eax
mov dword [ebp - 0xb0], ecx
test ebx, ebx
je 0x428c03
add esi, 2
mov edx, 0xff
nop dword [eax]
movzx eax, word [esi]
mov ebx, dword [ebp - 0x6c]
cmp ax, dx
ja 0x428b55
mov ecx, dword [ebx + 0x10]
nop
movzx eax, ax
test byte [eax + ecx], 1
je 0x428b55
movzx eax, word [esi + 2]
add esi, 2
cmp ax, dx
jbe 0x428b40
cmp word [esi], 0x23
jne 0x428bf1
movzx edi, word [esi + 2]
add esi, 2
test di, di
je 0x428b30
nop dword [eax + eax]
mov edx, dword [ebx + 0x58]
mov ecx, dword [ebx + 0x20]
test edx, edx
je 0x428b9f
cmp esi, ecx
jae 0x428bc0
push dword [ebp - 0x94]
lea eax, [ebx + 0x5c]
push eax
push ecx
push edx
push esi
call fcn.0043ac80
add esp, 0x14
test eax, eax
je 0x428bc0
mov eax, dword [ebx + 0x5c]
lea esi, [esi + eax*2]
jmp 0x428b24
mov edx, dword [ebx + 0x5c]
lea eax, [edx + edx]
sub ecx, eax
cmp esi, ecx
ja 0x428bc0
cmp di, word [ebx + 0x60]
jne 0x428bc0
cmp edx, 1
je 0x428b97
mov ax, word [esi + 2]
cmp ax, word [ebx + 0x62]
je 0x428b97
add esi, 2
cmp dword [ebp - 0x94], 0
je 0x428be4
mov ax, word [esi]
mov ecx, 0xfc00
and ax, cx
mov ecx, 0xdc00
cmp ax, cx
jne 0x428be4
add esi, 2
movzx edi, word [esi]
test di, di
jne 0x428b70
jmp 0x428b24
mov edx, dword [ebp - 0xac]
add esi, 0xfffffffe
mov edi, dword [ebp - 0xb4]
mov dword [ebp - 0x64], esi
movzx ecx, word [esi + 2]
cmp ecx, 0x2b
jne 0x428c20
xor ebx, ebx
mov dword [ebp - 0x9c], 1
add esi, 2
mov dword [ebp - 0x64], esi
jmp 0x428c39
cmp ecx, 0x3f
jne 0x428c33
mov ebx, dword [ebp - 0x124]
add esi, 2
mov dword [ebp - 0x64], esi
jmp 0x428c39
mov ebx, dword [ebp - 0x118]
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0x78], ebx
cmp word [eax], 0x75
jne 0x428cb1
push 4
push eax
add eax, 4
push eax
call fcn.0043eca0
mov eax, dword [ebp - 0x80]
add esp, 0xc
add dword [ebp - 0x68], 8
cmp dword [ebp - 0xa4], 0
mov dword [eax], 0x40082
mov dword [eax + 8], 0x40079
mov dword [ebp - 0xf4], 6
jne 0x428ca8
mov esi, dword [ebp - 0x6c]
mov eax, dword [esi + 0x14]
mov ecx, dword [esi + 0x24]
add eax, 2
cmp ecx, eax
mov eax, dword [ebp - 0x80]
jb 0x428ca8
sub eax, dword [esi + 0x18]
movzx edx, word [ecx - 2]
add eax, 2
sar eax, 1
cmp edx, eax
jne 0x428ca5
lea eax, [edx + 2]
mov word [ecx - 2], ax
mov eax, dword [ebp - 0x80]
mov edx, dword [ebp - 0xac]
mov esi, dword [ebp - 0x64]
movzx ecx, word [eax]
cmp ecx, 0x1d
je 0x4294c8
cmp ecx, 0x1e
je 0x4294c8
cmp ecx, 0x1f
je 0x4294c8
cmp ecx, 0x20
je 0x4294c8
cmp ecx, 0x17
jae 0x428d02
mov edi, ecx
mov ebx, 0x34
cmp edi, 0x10
je 0x428cf2
cmp edi, 0xf
jne 0x429572
movzx edx, word [eax + 2]
movzx eax, word [eax + 4]
mov dword [ebp - 0x7c], eax
jmp 0x42957c
cmp ecx, 0x6e
je 0x42942c
cmp ecx, 0x6f
je 0x42942c
cmp ecx, 0x70
je 0x42942c
cmp ecx, 0x71
je 0x42942c
cmp ecx, 0x72
je 0x42942c
cmp ecx, 0x73
je 0x42942c
cmp ecx, 0x74
je 0x42942c
cmp ecx, 0x7e
jb 0x4293fd
mov edx, 0x88
cmp cx, dx
ja 0x4293fd
mov edx, dword [ebp - 0x68]
mov edi, dword [ebp - 0xd0]
sub edx, eax
xor eax, eax
sar edx, 1
mov dword [ebp - 0x90], eax
mov dword [ebp - 0xe0], eax
mov eax, 0x88
mov dword [ebp - 0x84], edx
mov dword [ebp - 0x7c], edi
cmp cx, ax
jne 0x428dac
mov eax, dword [ebp - 0x80]
mov ebx, 0x92
cmp word [eax + 4], bx
mov ebx, dword [ebp - 0x78]
jne 0x428dac
mov ebx, dword [ebp - 0x80]
movzx eax, word [eax + 2]
cmp word [ebx + eax*2], 0x78
mov ebx, dword [ebp - 0x78]
jne 0x42940b
mov eax, 0x82
cmp cx, ax
mov ecx, dword [ebp - 0xb4]
jae 0x428de0
test ecx, ecx
jg 0x42940b
mov eax, dword [ebp - 0xac]
test eax, eax
js 0x428dd3
cmp eax, 1
jle 0x428de6
mov eax, 1
mov dword [ebp - 0xac], eax
jmp 0x428de6
mov eax, dword [ebp - 0xac]
test ecx, ecx
jne 0x428ece
push dword [ebp - 0xd0]
cmp eax, 1
mov eax, dword [ebp - 0x68]
push dword [ebp - 0x6c]
push dword [ebp - 0x94]
mov word [eax], cx
jg 0x428e74
push 1
push dword [ebp - 0x80]
call fcn.00426bc0
mov ecx, dword [ebp - 0x80]
mov eax, dword [ebp - 0x84]
add eax, eax
push eax
lea esi, [ecx + 2]
push ecx
push esi
call fcn.0043eca0
mov edx, dword [ebp - 0x68]
add esp, 0x20
add edx, 2
cmp dword [ebp - 0xac], 0
mov dword [ebp - 0x68], edx
jne 0x428e50
mov eax, dword [ebp - 0x80]
mov ecx, 0xa3
mov word [eax], cx
mov esi, dword [ebp - 0x64]
jmp 0x42940e
mov ecx, dword [ebp - 0x80]
lea eax, [ebx + 0x94]
mov dword [ebp - 0x80], esi
mov dword [ebp - 0xe0], ecx
mov word [ecx], ax
mov eax, dword [ebp - 0xac]
mov esi, dword [ebp - 0x64]
dec eax
jmp 0x429073
mov esi, dword [ebp - 0x80]
push 3
push esi
call fcn.00426bc0
mov eax, dword [ebp - 0x84]
add eax, eax
push eax
lea eax, [esi + 6]
push esi
push eax
call fcn.0043eca0
add dword [ebp - 0x68], 6
lea eax, [ebx + 0x94]
mov word [esi], ax
add esp, 0x20
mov eax, 0x84
mov word [esi + 2], ax
add esi, 4
xor eax, eax
mov dword [ebp - 0x90], esi
mov word [esi], ax
add esi, 2
mov eax, dword [ebp - 0xac]
mov dword [ebp - 0x80], esi
dec eax
mov esi, dword [ebp - 0x64]
jmp 0x429073
cmp ecx, 1
jle 0x429064
mov ebx, dword [ebp - 0xa4]
test ebx, ebx
je 0x428f38
mov eax, dword [ebp - 0xb4]
lea edi, [ecx - 1]
mov ecx, dword [ebp - 0xf4]
dec eax
push 0
cdq
push ecx
push edx
push eax
imul edi, ecx
call fcn.0044fe90
test edx, edx
jg 0x42b33a
jl 0x428f14
cmp eax, 0x7fffffff
ja 0x42b33a
mov ecx, dword [ebx]
mov eax, 0x7fffffeb
sub eax, ecx
cmp eax, edi
jb 0x42b33a
lea eax, [edi + ecx]
mov edi, dword [ebp - 0x7c]
mov ecx, dword [ebp - 0xb4]
mov dword [ebx], eax
jmp 0x429064
cmp dword [ebp - 0x104], 0
je 0x428f62
cmp dword [ebp - 0xbc], 0
jge 0x428f62
mov eax, dword [ebp - 0xdc]
mov dword [ebp - 0xc8], eax
mov eax, dword [ebp - 0x8c]
mov dword [ebp - 0xbc], eax
mov ebx, 1
mov dword [ebp - 0xa8], ebx
cmp ecx, ebx
jle 0x429064
lea eax, [edx + edx]
mov edx, dword [ebp - 0x68]
nop dword [eax + eax]
mov ecx, dword [ebp - 0x6c]
push eax
push dword [ebp - 0x80]
mov edi, dword [ecx + 0x24]
sub edi, dword [ecx + 0x14]
sar edi, 1
push edx
mov dword [ebp - 0xc0], edi
call fcn.0043f220
mov edx, dword [ebp - 0x6c]
add esp, 0xc
mov esi, dword [ebp - 0x7c]
mov ecx, esi
sub ecx, edi
add ecx, dword [edx + 0x2c]
mov eax, dword [edx + 0x14]
lea eax, [eax + ecx*2]
add eax, 0xffffff38
cmp dword [edx + 0x24], eax
jbe 0x428ff0
nop dword [eax + eax]
push edx
call fcn.0042c180
mov ecx, dword [ebp - 0x70]
add esp, 4
mov dword [ecx], eax
test eax, eax
jne 0x42b35f
mov edx, dword [ebp - 0x6c]
mov ecx, esi
sub ecx, edi
add ecx, dword [edx + 0x2c]
mov eax, dword [edx + 0x14]
lea eax, [eax + ecx*2]
add eax, 0xffffff38
cmp dword [edx + 0x24], eax
ja 0x428fc0
mov eax, dword [edx + 0x14]
lea edx, [eax + esi*2]
lea esi, [edi + edi]
add eax, esi
cmp edx, eax
jae 0x429038
mov edi, dword [ebp - 0x84]
mov ebx, dword [ebp - 0x6c]
nop dword [eax + eax]
mov cx, word [edx]
add edx, 2
mov eax, dword [ebx + 0x24]
add cx, di
mov word [eax], cx
add dword [ebx + 0x24], 2
mov eax, dword [ebx + 0x14]
add eax, esi
cmp edx, eax
jb 0x429010
mov edi, dword [ebp - 0xc0]
mov ebx, dword [ebp - 0xa8]
mov ecx, dword [ebp - 0x84]
inc ebx
mov edx, dword [ebp - 0x68]
mov dword [ebp - 0x7c], edi
mov dword [ebp - 0xa8], ebx
lea eax, [ecx + ecx]
mov ecx, dword [ebp - 0xb4]
add edx, eax
mov dword [ebp - 0x68], edx
cmp ebx, ecx
jl 0x428f80
mov esi, dword [ebp - 0x64]
mov eax, dword [ebp - 0xac]
mov ebx, dword [ebp - 0x78]
test eax, eax
jle 0x42907b
sub eax, ecx
mov dword [ebp - 0xac], eax
test eax, eax
js 0x4292aa
mov edx, dword [ebp - 0xa4]
test edx, edx
je 0x4290e1
test eax, eax
jle 0x4290e1
mov ecx, dword [ebp - 0xf4]
add ecx, 5
mov edi, ecx
imul edi, eax
cdq
push edx
push eax
push 0
push ecx
sub edi, 4
call fcn.0044fe90
test edx, edx
jg 0x42b33a
jl 0x4290c0
cmp eax, 0x7fffffff
ja 0x42b33a
mov edx, dword [ebp - 0xa4]
mov eax, 0x7fffffeb
mov ecx, dword [edx]
sub eax, ecx
cmp eax, edi
jb 0x42b33a
lea eax, [edi + ecx]
mov dword [edx], eax
jmp 0x429228
add eax, 0xffffffff
mov dword [ebp - 0x78], eax
js 0x429228
mov ecx, dword [ebp - 0x84]
lea edx, [ebx + 0x94]
mov esi, dword [ebp - 0x6c]
add ecx, ecx
mov dword [ebp - 0xa8], edx
mov ebx, dword [esi + 0x24]
sub ebx, dword [esi + 0x14]
mov esi, dword [ebp - 0x68]
sar ebx, 1
mov dword [ebp - 0xc0], ebx
mov word [esi], dx
mov edx, esi
mov esi, dword [ebp - 0x6c]
add edx, 2
mov dword [ebp - 0x68], edx
test eax, eax
je 0x42915c
mov eax, 0x84
mov word [edx], ax
add edx, 2
mov dword [ebp - 0x68], edx
mov edx, dword [ebp - 0x90]
test edx, edx
jne 0x429143
xor eax, eax
jmp 0x42914a
mov eax, dword [ebp - 0x68]
sub eax, edx
sar eax, 1
mov edx, dword [ebp - 0x68]
mov dword [ebp - 0x90], edx
mov word [edx], ax
add edx, 2
mov dword [ebp - 0x68], edx
push ecx
push dword [ebp - 0x80]
push edx
call fcn.0043f220
mov eax, dword [esi + 0x14]
mov ecx, edi
sub ecx, ebx
add esp, 0xc
add ecx, dword [esi + 0x2c]
lea eax, [eax + ecx*2]
add eax, 0xffffff38
cmp dword [esi + 0x24], eax
jbe 0x4291ad
push esi
call fcn.0042c180
mov ecx, dword [ebp - 0x70]
add esp, 4
mov dword [ecx], eax
test eax, eax
jne 0x42b35f
mov eax, dword [esi + 0x14]
mov ecx, edi
sub ecx, ebx
add ecx, dword [esi + 0x2c]
lea eax, [eax + ecx*2]
add eax, 0xffffff38
cmp dword [esi + 0x24], eax
ja 0x429180
mov eax, dword [esi + 0x14]
lea edx, [eax + edi*2]
lea edi, [ebx + ebx]
add eax, edi
cmp edx, eax
jae 0x429202
mov ebx, dword [ebp - 0x84]
xor eax, eax
cmp dword [ebp - 0x78], eax
setne al
lea eax, [eax*2 + 1]
movzx esi, ax
mov eax, dword [ebp - 0x6c]
mov cx, word [edx]
add edx, 2
add cx, si
add cx, bx
mov eax, dword [eax + 0x24]
mov word [eax], cx
mov eax, dword [ebp - 0x6c]
add dword [eax + 0x24], 2
mov eax, dword [eax + 0x14]
add eax, edi
cmp edx, eax
jb 0x4291d4
mov ebx, dword [ebp - 0xc0]
mov esi, dword [ebp - 0x6c]
mov eax, dword [ebp - 0x84]
mov edi, ebx
mov edx, dword [ebp - 0xa8]
lea ecx, [eax + eax]
mov eax, dword [ebp - 0x78]
add dword [ebp - 0x68], ecx
sub eax, 1
mov dword [ebp - 0x78], eax
jns 0x429104
mov esi, dword [ebp - 0x64]
mov ebx, dword [ebp - 0x90]
test ebx, ebx
je 0x429271
mov esi, dword [ebp - 0x68]
mov ecx, esi
mov edx, esi
sub ecx, ebx
sar ecx, 1
inc ecx
lea eax, [ecx + ecx]
sub edx, eax
movzx eax, word [edx + 2]
test eax, eax
jne 0x42924f
xor ebx, ebx
jmp 0x429254
neg eax
lea ebx, [ebx + eax*2]
mov eax, 0x79
mov word [esi], ax
mov word [esi + 2], cx
add esi, 4
mov word [edx + 2], cx
test ebx, ebx
jne 0x429235
mov dword [ebp - 0x68], esi
mov esi, dword [ebp - 0x64]
mov edx, dword [ebp - 0x68]
mov ebx, dword [ebp - 0x94]
cmp dword [ebp - 0x9c], 0
je 0x42940e
mov eax, dword [ebp - 0xb0]
movzx ecx, word [eax]
lea eax, [ecx - 0x1d]
cmp eax, 0x53
ja case.0x4292a3.33
movzx eax, byte [eax + 0x42b70c]
jmp dword [eax*4 + 0x42b6f8]
mov edx, dword [ebp - 0x68]
mov ecx, 0x82
movzx eax, word [edx - 2]
lea edi, [edx - 4]
add eax, eax
mov ebx, edi
sub ebx, eax
lea esi, [ecx + 1]
movzx eax, word [ebx]
cmp ax, cx
je 0x4292cf
cmp ax, si
jne 0x4292e2
cmp dword [ebp - 0x9c], 0
je 0x4292e2
mov eax, 0x84
mov word [ebx], ax
jmp 0x4292f4
cmp ax, cx
je 0x4293ec
cmp ax, si
je 0x4293ec
cmp dword [ebp - 0xa4], 0
jne 0x429330
mov esi, ebx
nop
push 0
push dword [ebp - 0x6c]
push dword [ebp - 0x94]
push edi
push esi
call fcn.0042bce0
add esp, 0x14
test eax, eax
jne 0x429329
movzx eax, word [esi + 2]
cmp word [esi + eax*2], 0x78
lea esi, [esi + eax*2]
je 0x429300
jmp 0x42932d
add word [ebx], 5
mov edx, dword [ebp - 0x68]
cmp dword [ebp - 0x9c], 0
je 0x4293de
movzx eax, word [ebx]
mov ecx, 0x88
cmp ax, cx
je 0x429362
mov ecx, 0x8d
cmp ax, cx
je 0x429362
inc eax
mov word [ebx], ax
mov eax, 0x7c
mov word [edi], ax
jmp 0x4293ba
push dword [ebp - 0xd0]
mov esi, edx
xor eax, eax
push dword [ebp - 0x6c]
sub esi, ebx
mov word [edx], ax
push dword [ebp - 0x94]
sar esi, 1
push 2
push ebx
call fcn.00426bc0
lea eax, [esi + esi]
push eax
lea eax, [ebx + 4]
push ebx
push eax
call fcn.0043eca0
mov edx, dword [ebp - 0x68]
mov eax, 0x85
mov word [ebx], ax
add esi, 2
mov eax, 0x7c
add esp, 0x20
mov word [edx + 4], ax
mov word [edx + 6], si
add edx, 8
mov dword [ebp - 0x68], edx
mov word [ebx + 2], si
mov eax, dword [ebp - 0xe0]
test eax, eax
je 0x4293cc
mov ecx, 0x96
mov word [eax], cx
cmp dword [ebp - 0xb4], 2
mov esi, dword [ebp - 0x64]
jge 0x429274
jmp 0x42940e
mov eax, dword [ebp - 0x78]
add eax, 0x7a
mov word [edi], ax
mov esi, dword [ebp - 0x64]
jmp 0x42940e
mov eax, dword [ebp - 0x78]
add eax, 0x7a
mov word [edi], ax
mov esi, dword [ebp - 0x64]
jmp 0x429274
mov eax, 0x9f
cmp cx, ax
jne 0x42b3d5
mov edx, dword [ebp - 0x68]
mov ebx, dword [ebp - 0x6c]
mov eax, dword [ebp - 0xec]
or dword [ebx + 0x74], eax
add esi, 2
mov dword [ebp - 0x80], 0
mov dword [ebp - 0x64], esi
jmp 0x427710
test edx, edx
jne 0x429437
mov edx, eax
mov dword [ebp - 0x68], edx
jmp 0x42940e
test edi, edi
jne 0x429473
cmp edx, 0xffffffff
jne 0x429457
mov edx, dword [ebp - 0x68]
lea eax, [ebx + 0x62]
mov word [edx], ax
add edx, 2
mov esi, dword [ebp - 0x64]
mov dword [ebp - 0x68], edx
jmp 0x429274
cmp edx, 1
jne 0x429494
mov edx, dword [ebp - 0x68]
lea eax, [ebx + 0x66]
mov word [edx], ax
add edx, 2
mov esi, dword [ebp - 0x64]
mov dword [ebp - 0x68], edx
jmp 0x429274
cmp edi, 1
jne 0x429494
cmp edx, 0xffffffff
jne 0x429494
mov edx, dword [ebp - 0x68]
lea eax, [ebx + 0x64]
mov word [edx], ax
add edx, 2
mov esi, dword [ebp - 0x64]
mov dword [ebp - 0x68], edx
jmp 0x429274
mov ecx, dword [ebp - 0x68]
lea eax, [ebx + 0x68]
mov word [ecx], ax
xor eax, eax
mov word [ecx + 2], di
add ecx, 4
cmp edx, 0xffffffff
mov dword [ebp - 0x68], ecx
cmove edx, eax
mov word [ecx], dx
mov esi, dword [ebp - 0x64]
mov dword [ebp - 0xac], edx
mov edx, ecx
add edx, 2
mov dword [ebp - 0x68], edx
jmp 0x429274
mov eax, ecx
sub eax, 0x1e
je 0x4294eb
sub eax, 1
je 0x4294e4
sub eax, 1
je 0x4294dd
xor ebx, ebx
jmp 0x4294f0
mov ebx, 0x27
jmp 0x4294f0
mov ebx, 0x1a
jmp 0x4294f0
mov ebx, 0xd
cmp dword [ebp - 0x94], 0
mov edi, dword [ebp - 0x68]
je 0x429548
mov ax, word [edi - 2]
lea edx, [edi - 2]
and ax, word [ebp - 0x128]
cmp ax, word [ebp - 0x12c]
jne 0x429548
mov ax, word [edx]
mov ecx, 0xfc00
and ax, cx
mov ecx, 0xdc00
cmp ax, cx
jne 0x42952b
sub edx, 2
sub edi, edx
sar edi, 1
lea eax, [edi + edi]
push eax
push edx
lea eax, [ebp - 0x60]
push eax
call fcn.0043f220
add esp, 0xc
or edi, 0x10000000
jmp 0x429572
movzx edi, word [edi - 2]
cmp ecx, 0x1e
ja 0x429572
cmp dword [ebp - 0xb4], 1
jle 0x429572
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0xc8], edi
mov eax, dword [eax + 0x74]
or eax, dword [ebp - 0xf0]
mov dword [ebp - 0xbc], eax
mov dword [ebp - 0x7c], 0xffffffff
or edx, 0xffffffff
cmp dword [ebp - 0xac], 0
mov ecx, dword [ebp - 0x68]
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0xa8], edx
mov dword [ebp - 0x68], eax
je 0x42940b
mov eax, dword [ebp - 0x78]
add eax, ebx
cmp dword [ebp - 0xb4], 0
mov dword [ebp - 0x78], eax
jne 0x429621
mov ecx, dword [ebp - 0xac]
cmp ecx, 0xffffffff
jne 0x429603
add eax, 0x21
mov ecx, dword [ebp - 0x80]
lea esi, [ecx + 2]
mov word [ecx], ax
mov dword [ebp - 0x68], esi
mov ecx, dword [ebp - 0x7c]
mov ebx, dword [ebp - 0x94]
test ebx, ebx
je 0x42972d
test edi, 0x10000000
je 0x42972d
and edi, 7
lea eax, [ebp - 0x60]
add edi, edi
push edi
push eax
push esi
call fcn.0043f220
mov edx, dword [ebp - 0x68]
add esp, 0xc
mov esi, dword [ebp - 0x64]
add edx, edi
mov dword [ebp - 0x68], edx
jmp 0x42927a
cmp ecx, 1
jne 0x42960d
add eax, 0x25
jmp 0x4295b7
mov ebx, dword [ebp - 0x80]
add eax, 0x27
lea esi, [ebx + 2]
mov word [ebx], ax
mov word [esi], cx
add esi, 2
jmp 0x4295c0
cmp dword [ebp - 0xb4], 1
jne 0x429660
mov ebx, dword [ebp - 0xac]
cmp ebx, 0xffffffff
jne 0x42963d
add eax, 0x23
jmp 0x4295b7
mov dword [ebp - 0x68], ecx
cmp ebx, 1
je 0x42940b
add eax, 0x27
lea esi, [ecx + 2]
mov word [ecx], ax
lea eax, [ebx - 1]
mov word [esi], ax
add esi, 2
jmp 0x4295c0
mov ecx, dword [ebp - 0x80]
lea eax, [ebx + 0x29]
mov ebx, dword [ebp - 0xac]
lea esi, [ecx + 2]
mov word [ecx], ax
mov eax, dword [ebp - 0xb4]
mov word [esi], ax
add esi, 2
mov dword [ebp - 0x68], esi
cmp ebx, eax
je 0x4295c3
cmp dword [ebp - 0x94], 0
je 0x4296de
test edi, 0x10000000
je 0x4296de
mov esi, edi
lea eax, [ebp - 0x60]
and esi, 7
add esi, esi
push esi
push eax
push dword [ebp - 0x68]
call fcn.0043f220
mov edx, dword [ebp - 0xa8]
add esp, 0xc
add dword [ebp - 0x68], esi
mov eax, dword [ebp - 0xb4]
mov esi, dword [ebp - 0x68]
mov ecx, dword [ebp - 0x7c]
test ebx, ebx
jns 0x4296f7
mov eax, dword [ebp - 0x78]
add eax, 0x21
mov word [esi], ax
add esi, 2
mov dword [ebp - 0x68], esi
jmp 0x4295c6
mov word [esi], di
add esi, 2
test edx, edx
js 0x4296c3
mov ecx, dword [ebp - 0x7c]
mov word [esi], dx
mov word [esi + 2], cx
add esi, 4
jmp 0x4296c6
sub ebx, eax
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0xac], ebx
cmp ebx, 1
jne 0x429718
add eax, 0x25
mov word [esi], ax
add esi, 2
mov dword [ebp - 0x68], esi
jmp 0x4295c6
add eax, 0x27
mov word [esi], ax
mov word [esi + 2], bx
add esi, 4
mov dword [ebp - 0x68], esi
jmp 0x4295c6
mov word [esi], di
add esi, 2
mov dword [ebp - 0x68], esi
test edx, edx
js 0x429751
mov word [esi], dx
mov edx, esi
mov word [edx + 2], cx
add edx, 4
mov esi, dword [ebp - 0x64]
mov dword [ebp - 0x68], edx
jmp 0x42927a
mov esi, dword [ebp - 0x64]
mov edx, dword [ebp - 0x68]
jmp 0x42927a
mov eax, dword [ebp - 0xb0]
movzx eax, word [eax + 4]
cmp eax, 0x10
je 0x42977d
cmp eax, 0xf
je 0x42977d
movzx ecx, byte [ecx + 0x455178]
xor eax, eax
add ecx, eax
jmp 0x4297d9
movzx ecx, byte [ecx + 0x455178]
mov eax, 2
add ecx, eax
jmp 0x4297d9
movzx eax, byte [ecx + 0x455178]
mov ecx, dword [ebp - 0xb0]
lea ecx, [ecx + eax*2]
mov dword [ebp - 0xb0], ecx
test ebx, ebx
je case.0x4292a3.33
mov ax, word [ecx - 2]
mov ecx, 0xfc00
and ax, cx
mov ecx, 0xd800
cmp ax, cx
jne case.0x4292a3.33
add dword [ebp - 0xb0], 2
jmp case.0x4292a3.33
add dword [ebp - 0xb0], 0x22
jmp case.0x4292a3.33
mov ecx, dword [ebp - 0xb0]
movzx ecx, word [ecx + 2]
mov eax, dword [ebp - 0xb0]
lea eax, [eax + ecx*2]
mov dword [ebp - 0xb0], eax
mov ecx, dword [ebp - 0xb0]
mov edi, edx
sub edi, ecx
sar edi, 1
test edi, edi
jle 0x42940e
movzx eax, word [ecx]
cmp eax, 0x76
jae 0x42981c
mov al, byte [eax + 0x454d10]
test al, al
je 0x42981c
movzx eax, al
mov word [ecx], ax
mov esi, dword [ebp - 0x64]
jmp 0x42940e
push dword [ebp - 0xd0]
mov ebx, dword [ebp - 0x6c]
xor eax, eax
push ebx
push dword [ebp - 0x94]
mov word [edx], ax
push 2
push dword [ebp - 0xb0]
call fcn.00426bc0
lea eax, [edi + edi]
push eax
mov eax, dword [ebp - 0xb0]
push eax
add eax, 4
push eax
call fcn.0043eca0
mov eax, dword [ebp - 0xb0]
mov ecx, 0x82
mov edx, dword [ebp - 0x68]
add edi, 2
add esp, 0x20
mov word [eax], cx
mov eax, 0x79
mov word [edx + 4], ax
mov word [edx + 6], di
add edx, 8
mov eax, dword [ebp - 0xb0]
mov dword [ebp - 0x68], edx
mov word [eax + 2], di
mov esi, dword [ebp - 0x64]
jmp 0x429411
add esi, 2
mov dword [ebp - 0x64], esi
movzx edx, word [esi]
cmp edx, 0x3f
jne 0x4298df
cmp word [esi + 2], 0x23
jne 0x4298df
mov ebx, dword [ebp - 0x6c]
add esi, 4
mov dword [ebp - 0x64], esi
mov eax, dword [ebx + 0x20]
cmp esi, eax
jae 0x4298c7
cmp word [esi], 0x29
je 0x427d88
add esi, 2
mov dword [ebp - 0x64], esi
cmp esi, eax
jb 0x4298b3
cmp word [esi], 0x29
je 0x427d88
mov eax, dword [ebp - 0x70]
mov dword [eax], 0x76
jmp 0x42b5d6
cmp edx, 0x2a
jne 0x42990d
lea eax, [esi + 2]
mov dword [ebp - 0x9c], eax
movzx eax, word [eax]
cmp eax, 0x3a
je 0x429955
mov ecx, 0xff
cmp ax, cx
ja 0x42990d
mov ebx, dword [ebp - 0x6c]
mov ecx, eax
mov eax, dword [ebx + 0x10]
test byte [ecx + eax], 2
jne 0x429958
mov ecx, dword [ebp - 0x98]
xor eax, eax
mov dword [ebp - 0xc0], ecx
mov ebx, 0x86
mov dword [ebp - 0x78], eax
mov dword [ebp - 0xe0], eax
cmp edx, 0x3f
jne 0x42a55f
add esi, 2
mov dword [ebp - 0x64], esi
movzx edx, word [esi]
lea eax, [edx - 0x21]
cmp eax, 0x5b
ja case.0x42994e.34
movzx eax, byte [eax + 0x42b798]
jmp dword [eax*4 + 0x42b760]
mov ebx, dword [ebp - 0x6c]
mov edx, dword [ebp - 0x9c]
xor edi, edi
mov esi, edx
mov dword [ebp - 0xa8], edi
mov dword [ebp - 0x80], edi
mov ecx, 0x454878
mov dword [ebp - 0x64], esi
mov edi, 0xff
mov dword [ebp - 0x84], 0
movzx eax, word [esi]
mov dword [ebp - 0x90], ecx
cmp ax, di
ja 0x4299b0
mov ecx, dword [ebx + 0x10]
movzx eax, ax
test byte [eax + ecx], 2
je 0x4299aa
add esi, 2
mov dword [ebp - 0x64], esi
movzx eax, word [esi]
cmp ax, di
jbe 0x429993
mov ecx, dword [ebp - 0x90]
mov ebx, esi
sub ebx, edx
sar ebx, 1
cmp word [esi], 0x3a
jne 0x429a04
add esi, 2
mov dword [ebp - 0x64], esi
mov edi, esi
mov dword [ebp - 0xa8], edi
movzx eax, word [esi]
test ax, ax
je 0x4299e6
cmp ax, 0x29
je 0x4299e6
add esi, 2
mov dword [ebp - 0x64], esi
movzx eax, word [esi]
test ax, ax
jne 0x4299d2
mov edx, esi
sub edx, edi
sar edx, 1
mov dword [ebp - 0x84], edx
cmp edx, 0xffff
ja 0x42b3ee
mov edx, dword [ebp - 0x9c]
cmp word [esi], 0x29
jne 0x42b42f
xor edi, edi
mov esi, 0x4548a8
cmp ebx, dword [esi]
jne 0x429a2e
push ebx
push ecx
push edx
call fcn.0043af40
add esp, 0xc
test eax, eax
je 0x429a4f
mov ecx, dword [ebp - 0x90]
inc ecx
inc edi
add ecx, dword [esi]
add esi, 0xc
mov dword [ebp - 0x90], ecx
cmp esi, str._b__w_
jge 0x42b41e
mov edx, dword [ebp - 0x9c]
jmp 0x429a15
lea eax, [edi + edi*2]
mov ecx, dword [eax*4 + 0x4548ac]
cmp ecx, 0xa0
jne 0x429ad7
cmp dword [ebp - 0x84], 0
jne 0x42b3fc
mov ebx, dword [ebp - 0x6c]
mov edx, dword [ebp - 0x68]
mov ecx, dword [ebx + 0x34]
mov dword [ebx + 0x78], 1
test ecx, ecx
je 0x429aa7
mov ebx, 0xa2
nop word [eax + eax]
mov word [edx], bx
mov ax, word [ecx + 4]
mov word [edx + 2], ax
add edx, 4
mov ecx, dword [ecx]
test ecx, ecx
jne 0x429a90
mov ebx, dword [ebp - 0x6c]
xor eax, eax
cmp dword [ebx + 0x70], eax
setg al
add eax, 0xa0
movzx eax, ax
mov word [edx], ax
mov edi, eax
add edx, 2
cmp dword [ebp - 0x8c], 0xfffffffe
mov dword [ebp - 0x68], edx
jne 0x429b41
mov dword [ebp - 0x8c], 0xffffffff
jmp 0x429b41
mov edx, dword [ebp - 0x84]
test edx, edx
jne 0x429af3
test ecx, ecx
js 0x42b40d
mov edx, dword [ebp - 0x68]
movzx eax, cx
mov edi, eax
jmp 0x429b35
cmp dword [eax*4 + 0x4548b0], 0
jl 0x42b3fc
mov ecx, dword [ebp - 0x68]
lea esi, [edx + edx]
movzx eax, word [eax*4 + 0x4548b0]
push esi
push dword [ebp - 0xa8]
mov word [ecx], ax
mov edi, eax
mov word [ecx + 2], dx
add ecx, 4
push ecx
mov dword [ebp - 0x68], ecx
call fcn.0043f220
mov edx, dword [ebp - 0x68]
add esp, 0xc
add edx, esi
xor eax, eax
mov ebx, dword [ebp - 0x6c]
mov word [edx], ax
add edx, 2
mov dword [ebp - 0x68], edx
add edi, 0xffffff68
cmp edi, 5
ja case.default.0x429b50
jmp dword [edi*4 + 0x42b7f4]
mov esi, dword [ebp - 0x64]
or dword [ebx + 0x44], 0x1000
add esi, 2
mov dword [ebp - 0x64], esi
jmp 0x427710
mov dword [ebx + 0x7c], 1
mov esi, dword [ebp - 0x64]
add esi, 2
mov dword [ebp - 0x64], esi
jmp 0x427710
mov dword [ebp - 0xe0], 1
add esi, 2
mov ebx, 0x84
mov dword [ebp - 0x64], esi
jmp 0x42a15c
mov ebx, esi
mov dword [ebp - 0x84], 0x88
mov dword [ebp - 0xd4], ebx
cmp word [esi + 2], 0x3f
jne 0x429c6d
cmp word [esi + 4], 0x43
jne 0x429c6d
movzx edx, word [esi + 6]
cmp edx, 0x30
jb 0x429bd1
cmp edx, 0x39
jbe 0x429bd6
cmp edx, 0x29
jne 0x429c08
mov ecx, 3
cmp edx, 0x30
jb 0x429bf3
mov eax, edx
cmp ax, 0x39
ja 0x429bf3
movzx eax, word [esi + ecx*2 + 2]
inc ecx
cmp eax, 0x30
jae 0x429be2
cmp word [esi + ecx*2], 0x29
jne 0x429c63
lea ebx, [ecx + 1]
lea ebx, [esi + ebx*2]
mov dword [ebp - 0xd4], ebx
jmp 0x429c63
mov eax, dword [0x455244]
xor ecx, ecx
test eax, eax
je 0x429c63
cmp edx, eax
je 0x429c25
mov eax, dword [ecx*4 + 0x455248]
inc ecx
test eax, eax
jne 0x429c13
jmp 0x429c63
mov edi, dword [ecx*4 + 0x455220]
test edi, edi
je 0x429c63
mov eax, dword [ebp - 0x6c]
lea ecx, [esi + 8]
mov edx, 4
mov ebx, dword [eax + 0x20]
cmp ecx, ebx
jae 0x429c5d
movzx eax, word [ecx]
cmp eax, edi
jne 0x429c55
movzx eax, word [ecx + 2]
cmp eax, edi
jne 0x429cad
inc edx
add ecx, 2
add ecx, 2
inc edx
cmp ecx, ebx
jb 0x429c42
mov ebx, dword [ebp - 0xd4]
cmp word [ebx], 0x28
jne 0x42b43d
cmp word [ebx + 2], 0x3f
jne 0x429cc3
movzx eax, word [ebx + 4]
cmp eax, 0x3d
je 0x429c95
cmp eax, 0x21
je 0x429c95
cmp eax, 0x3c
jne 0x429cc3
movzx eax, word [ebx + 6]
cmp eax, 0x3d
je 0x429c95
cmp eax, 0x21
jne 0x429cc3
mov ecx, dword [ebp - 0x6c]
mov ebx, dword [ebp - 0x84]
mov dword [ecx + 0x88], 1
jmp 0x42a15f
cmp word [esi + edx*2 + 2], 0x29
jne 0x429c5d
lea ebx, [edx + 2]
lea ebx, [esi + ebx*2]
mov dword [ebp - 0xd4], ebx
jmp 0x429c63
mov eax, dword [ebp - 0x68]
mov ecx, 0x8e
push 7
push str.VERSION
or ebx, 0xffffffff
mov dword [ebp - 0x78], 2
mov word [eax + 4], cx
xor edi, edi
mov eax, dword [ebp - 0x64]
add eax, 2
mov dword [ebp - 0x7c], ebx
push eax
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0x64], eax
call fcn.0043af40
mov esi, dword [ebp - 0x64]
add esp, 0xc
test eax, eax
jne 0x429e08
cmp word [esi + 0xe], 0x29
je 0x429e08
add esi, 0xe
xor ebx, ebx
xor edx, edx
mov dword [ebp - 0x64], esi
cmp word [esi], 0x3e
jne 0x429d30
add esi, 2
lea ebx, [edi + 1]
mov dword [ebp - 0x64], esi
cmp word [esi], 0x3d
jne 0x42b44b
add esi, 2
mov dword [ebp - 0x64], esi
movzx eax, word [esi]
cmp eax, 0x30
jb 0x42b44b
cmp eax, 0x39
ja 0x42b44b
cmp ax, 0x39
ja 0x429d75
movzx eax, ax
lea edx, [edx + edx*4]
add esi, 2
lea edx, [edx - 0x18]
mov dword [ebp - 0x64], esi
lea edx, [eax + edx*2]
movzx eax, word [esi]
cmp eax, 0x30
jae 0x429d55
cmp word [esi], 0x2e
jne 0x429db0
add esi, 2
mov dword [ebp - 0x64], esi
movzx eax, word [esi]
cmp eax, 0x30
jb 0x429db0
nop dword [eax]
cmp ax, 0x39
ja 0x429db0
movzx eax, ax
lea edi, [edi + edi*4]
add esi, 2
lea edi, [edi - 0x18]
mov dword [ebp - 0x64], esi
lea edi, [eax + edi*2]
movzx eax, word [esi]
cmp eax, 0x30
jae 0x429d90
cmp word [esi], 0x29
jne 0x42b44b
test ebx, ebx
je 0x429dd1
cmp edx, 0xa
jl 0x429dca
jne 0x429de0
cmp edi, 0x14
jg 0x429de0
mov eax, 0x93
jmp 0x429de5
cmp edx, 0xa
jne 0x429de0
mov eax, 0x93
cmp edi, 0x14
je 0x429de5
mov eax, 0x92
mov ecx, dword [ebp - 0x68]
mov edx, 1
mov ebx, dword [ebp - 0x84]
mov word [ecx + 4], ax
mov esi, dword [ebp - 0x64]
mov ecx, dword [ebp - 0x6c]
add esi, 2
mov dword [ebp - 0x64], esi
jmp 0x42a162
movzx eax, word [esi]
cmp eax, 0x52
jne 0x429e31
cmp word [esi + 2], 0x26
jne 0x429e31
mov eax, dword [ebp - 0x68]
or edx, 0xffffffff
add esi, 4
mov ecx, 0x90
mov dword [ebp - 0x64], esi
mov word [eax + 4], cx
mov esi, dword [ebp - 0x64]
jmp 0x429e45
cmp eax, 0x3c
jne 0x429f3f
mov edx, 0x3e
add esi, 2
mov dword [ebp - 0x64], esi
mov dword [ebp - 0x90], edx
movzx eax, word [esi]
cmp eax, 0x30
jb 0x429e5c
cmp eax, 0x39
jbe 0x42b459
mov ecx, 0xff
cmp ax, cx
ja 0x42b43d
movzx ecx, ax
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax + 0x10]
test byte [ecx + eax], 0x10
je 0x42b43d
mov dword [ebp - 0x9c], esi
mov ecx, 0xff
add esi, 2
mov dword [ebp - 0x64], esi
movzx eax, word [esi]
cmp ax, cx
ja 0x429ebb
mov ecx, dword [ebp - 0x6c]
mov ecx, dword [ecx + 0x10]
nop dword [eax]
movzx eax, ax
test byte [eax + ecx], 0x10
je 0x429ebb
add esi, 2
mov dword [ebp - 0x64], esi
movzx eax, word [esi]
cmp ax, word [ebp - 0x130]
jbe 0x429ea0
mov eax, dword [ebp - 0x78]
mov ecx, esi
sub ecx, dword [ebp - 0x9c]
sar ecx, 1
cmp dword [ebp - 0xa4], edi
mov dword [ebp - 0x7c], ecx
cmovne eax, dword [ebp - 0x134]
mov dword [ebp - 0x78], eax
test edx, edx
jle 0x429ef1
mov ax, word [esi]
add esi, 2
mov dword [ebp - 0x64], esi
cmp ax, dx
jne 0x42b486
mov ax, word [esi]
add esi, 2
mov dword [ebp - 0x64], esi
cmp ax, 0x29
jne 0x42b486
cmp dword [ebp - 0xa4], 0
jne 0x42a156
test ebx, ebx
js 0x429ff1
test edi, edi
jle 0x42b467
mov ecx, dword [ebp - 0x6c]
test ebx, ebx
je 0x429fbc
cmp ebx, 0x2d
jne 0x429fb9
mov eax, dword [ecx + 0x48]
sub eax, edi
lea edi, [eax + 1]
jmp 0x429fbc
cmp eax, 0x27
jne 0x429f4b
mov edx, eax
jmp 0x429e3f
xor edx, edx
mov dword [ebp - 0x90], edx
cmp eax, 0x2d
je 0x429f73
cmp eax, 0x2b
je 0x429f73
cmp eax, 0x30
jb 0x429e5c
cmp eax, 0x39
ja 0x429e4b
xor ebx, ebx
jmp 0x429f83
mov ebx, eax
add esi, 2
mov dword [ebp - 0x64], esi
test ebx, ebx
js 0x429e4b
movzx eax, word [esi]
cmp eax, 0x30
jb 0x429ef1
nop
cmp ax, 0x39
ja 0x429ef1
movzx eax, ax
lea edi, [edi + edi*4]
add esi, 2
lea edi, [edi - 0x18]
mov dword [ebp - 0x64], esi
lea edi, [eax + edi*2]
movzx eax, word [esi]
cmp eax, 0x30
jae 0x429f90
jmp 0x429ef1
add edi, dword [ecx + 0x48]
test edi, edi
jle 0x42b478
cmp edi, dword [ecx + 0x4c]
ja 0x42b478
mov eax, dword [ebp - 0x68]
mov ebx, dword [ebp - 0x84]
mov edx, dword [ebp - 0x78]
mov word [eax + 6], di
mov esi, dword [ebp - 0x64]
cmp edi, dword [ecx + 0x50]
jbe 0x42a162
mov dword [ecx + 0x50], edi
jmp 0x42a162
mov eax, dword [ebp - 0x6c]
xor ecx, ecx
xor ebx, ebx
cmp cx, word [eax + 0x30]
mov edi, dword [eax + 0x28]
mov ecx, dword [ebp - 0x7c]
jae 0x42a03a
push ecx
lea eax, [edi + 2]
push eax
push dword [ebp - 0x9c]
call fcn.0043af00
add esp, 0xc
test eax, eax
je 0x42a031
mov ecx, dword [ebp - 0x6c]
inc ebx
movzx eax, word [ecx + 0x32]
lea edi, [edi + eax*2]
movzx eax, word [ecx + 0x30]
mov ecx, dword [ebp - 0x7c]
cmp ebx, eax
jl 0x42a004
mov esi, dword [ebp - 0x64]
mov edx, dword [ebp - 0x90]
mov ecx, dword [ebp - 0x6c]
movzx eax, word [ecx + 0x30]
cmp ebx, eax
jge 0x42a0e7
mov dword [ebp - 0xec], ebx
xor eax, eax
movzx esi, word [edi]
cmp esi, dword [ecx + 0x50]
jbe 0x42a05c
mov dword [ecx + 0x50], esi
inc eax
inc ebx
mov dword [ebp - 0xa8], eax
movzx eax, word [ecx + 0x30]
cmp ebx, eax
jge 0x42a0a0
movzx eax, word [ecx + 0x32]
push dword [ebp - 0x7c]
lea edi, [edi + eax*2]
lea eax, [edi + 2]
push eax
push dword [ebp - 0x9c]
call fcn.0043af00
mov ecx, dword [ebp - 0x6c]
add esp, 0xc
test eax, eax
jne 0x42a0a0
mov eax, dword [ebp - 0x7c]
cmp word [edi + eax*2 + 2], 0
mov eax, dword [ebp - 0xa8]
je 0x42a051
mov eax, dword [ebp - 0xa8]
mov edx, dword [ebp - 0x78]
cmp eax, 1
jle 0x42a0d5
mov ebx, dword [ebp - 0x68]
inc edx
mov ecx, dword [ebp - 0xec]
inc word [ebx + 4]
mov word [ebx + 6], cx
mov ecx, dword [ebp - 0x6c]
mov word [ebx + 8], ax
mov esi, dword [ebp - 0x64]
mov ebx, dword [ebp - 0x84]
jmp 0x42a162
mov eax, dword [ebp - 0x68]
mov ebx, dword [ebp - 0x84]
mov word [eax + 6], si
mov esi, dword [ebp - 0x64]
jmp 0x42a162
test edx, edx
jne 0x42b478
mov eax, dword [ebp - 0x9c]
cmp word [eax], 0x52
jne 0x42a1a8
mov ebx, dword [ebp - 0x7c]
xor ecx, ecx
lea edx, [ecx + 1]
cmp ebx, edx
jle 0x42a13e
nop dword [eax + eax]
movzx eax, word [eax + edx*2]
cmp eax, 0x30
jb 0x42b478
cmp eax, 0x39
ja 0x42b478
lea ecx, [ecx + ecx*4]
inc edx
lea ecx, [ecx - 0x18]
lea ecx, [eax + ecx*2]
mov eax, dword [ebp - 0x9c]
cmp edx, ebx
jl 0x42a110
test ecx, ecx
jne 0x42a143
mov ecx, 0xffff
mov eax, dword [ebp - 0x68]
mov edx, 0x90
mov word [eax + 4], dx
mov word [eax + 6], cx
mov esi, dword [ebp - 0x64]
mov ebx, dword [ebp - 0x84]
mov ecx, dword [ebp - 0x6c]
mov edx, dword [ebp - 0x78]
mov edi, dword [ebp - 0x6c]
inc dword [ecx + 0x6c]
mov ecx, dword [ecx + 0x6c]
mov eax, dword [edi]
cmp ecx, dword [eax + 0x1c]
jg 0x42b520
lea eax, [ebx - 0x7e]
cmp eax, 3
ja 0x42a8f5
cmp dword [edi + 0x88], 0
je 0x42a8f5
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x80], 0
mov dword [edi + 0x88], 0
jmp 0x42a909
cmp dword [ebp - 0x7c], 6
jne 0x42b478
push 6
push str.DEFINE
push eax
call fcn.0043af40
add esp, 0xc
test eax, eax
jne 0x42b475
mov eax, dword [ebp - 0x68]
mov ecx, 0xa4
mov ebx, dword [ebp - 0x84]
mov edx, 1
mov word [eax + 4], cx
mov esi, dword [ebp - 0x64]
mov ecx, dword [ebp - 0x6c]
jmp 0x42a162
mov ecx, dword [ebp - 0x6c]
mov ebx, 0x7e
inc dword [ecx + 0x70]
add esi, 2
mov dword [ebp - 0x64], esi
jmp 0x42a15f
add esi, 2
mov dword [ebp - 0x64], esi
cmp word [esi], 0x29
jne 0x42a25f
movzx eax, word [esi + 2]
cmp eax, 0x2a
je 0x42a25f
cmp eax, 0x2b
je 0x42a25f
cmp eax, 0x3f
je 0x42a25f
cmp eax, 0x7b
jne 0x42a236
lea eax, [esi + 4]
push eax
call fcn.0042cbb0
add esp, 4
test eax, eax
jne 0x42a25f
mov edx, dword [ebp - 0x68]
mov eax, 0x9f
mov ebx, dword [ebp - 0x6c]
mov dword [ebp - 0x80], 0
mov word [edx], ax
add edx, 2
mov esi, dword [ebp - 0x64]
add esi, 2
mov dword [ebp - 0x68], edx
mov dword [ebp - 0x64], esi
jmp 0x427710
mov ecx, dword [ebp - 0x6c]
mov ebx, 0x7f
inc dword [ecx + 0x70]
jmp 0x42a15f
movzx eax, word [esi + 2]
cmp eax, 0x21
je 0x42a2c6
cmp eax, 0x3d
je 0x42a2b0
nop dword [eax]
add esi, 2
mov dword [ebp - 0x64], esi
cmp word [esi], 0x3e
jne 0x42a280
add esi, 2
mov dword [ebp - 0x64], esi
mov ecx, dword [ebp - 0x6c]
mov edx, dword [ebp - 0x68]
inc dword [ecx + 0x48]
mov ax, word [ecx + 0x48]
mov word [edx + 4], ax
mov edx, 1
mov esi, dword [ebp - 0x64]
jmp 0x42a162
mov ecx, dword [ebp - 0x6c]
mov ebx, 0x80
inc dword [ecx + 0x70]
add esi, 4
mov dword [ebp - 0x64], esi
jmp 0x42a15f
mov ecx, dword [ebp - 0x6c]
mov ebx, 0x81
inc dword [ecx + 0x70]
add esi, 4
mov dword [ebp - 0x64], esi
jmp 0x42a15f
add esi, 2
mov ebx, 0x82
mov dword [ebp - 0x64], esi
jmp 0x42a15c
mov edx, dword [ebp - 0x68]
add esi, 2
mov dword [ebp - 0x64], esi
mov dword [ebp - 0xe4], edx
mov dword [ebp - 0xfc], 1
movzx edi, word [esi]
cmp edi, 0x29
je 0x42a447
cmp edi, 0x30
jb 0x42a31f
cmp edi, 0x39
jbe 0x42a447
mov eax, dword [0x455244]
xor edx, edx
test eax, eax
je 0x42a340
mov ecx, edi
nop dword [eax]
cmp ecx, eax
je 0x42a34e
mov eax, dword [edx*4 + 0x455248]
inc edx
test eax, eax
jne 0x42a330
mov eax, dword [ebp - 0x70]
mov dword [eax], 0xb6
jmp 0x42b5d6
mov edx, dword [edx*4 + 0x455220]
test edx, edx
je 0x42a340
cmp dword [ebp - 0xa4], 0
mov ebx, dword [ebp - 0x6c]
je 0x42a3b9
mov ecx, dword [ebx + 0x20]
mov edi, esi
nop word [eax + eax]
add esi, 2
mov dword [ebp - 0x64], esi
cmp esi, ecx
jae 0x42b497
movzx eax, word [esi]
cmp eax, edx
jne 0x42a393
movzx eax, word [esi + 2]
cmp eax, edx
jne 0x42a393
add esi, 4
mov dword [ebp - 0x64], esi
movzx eax, word [esi]
cmp eax, edx
jne 0x42a370
mov ecx, dword [ebp - 0xa4]
mov eax, esi
mov edx, dword [ebp - 0x68]
sub eax, edi
sar eax, 1
add eax, 7
add dword [ecx], eax
add esi, 2
mov dword [ebp - 0x64], esi
jmp 0x42a4b3
mov esi, dword [ebp - 0x68]
mov word [esi + 0xa], di
add esi, 0xc
mov eax, dword [ebp - 0x64]
mov edi, dword [ebp - 0x68]
add eax, 2
mov dword [ebp - 0x64], eax
sub eax, dword [ebx + 0x1c]
sar eax, 1
mov word [edi + 8], ax
mov ecx, dword [ebp - 0x64]
nop dword [eax + eax]
movzx eax, word [ecx]
cmp eax, edx
jne 0x42a3f5
movzx eax, word [ecx + 2]
add ecx, 2
cmp eax, edx
jne 0x42a409
mov dword [ebp - 0x64], ecx
mov ax, word [ecx]
mov word [esi], ax
add esi, 2
mov ecx, dword [ebp - 0x64]
add ecx, 2
mov dword [ebp - 0x64], ecx
jmp 0x42a3e0
xor eax, eax
lea edx, [esi + 2]
mov word [esi], ax
mov eax, 0x77
mov word [edi], ax
mov eax, dword [ebp - 0x64]
sub eax, dword [ebx + 0x1c]
add eax, 4
mov dword [ebp - 0x68], edx
sar eax, 1
mov word [edi + 2], ax
xor eax, eax
mov word [edi + 4], ax
lea eax, [esi + 2]
sub eax, edi
sar eax, 1
mov word [edi + 6], ax
mov esi, dword [ebp - 0x64]
add esi, 2
mov dword [ebp - 0x64], esi
jmp 0x42a4b3
mov eax, 0x76
xor ecx, ecx
mov word [edx], ax
mov esi, dword [ebp - 0x64]
movzx eax, word [esi]
cmp eax, 0x30
jb 0x42a48c
nop dword [eax]
cmp ax, 0x39
ja 0x42a48c
lea ecx, [ecx + ecx*4]
movzx eax, ax
lea ecx, [ecx - 0x18]
add esi, 2
mov dword [ebp - 0x64], esi
lea ecx, [eax + ecx*2]
cmp ecx, 0xff
jg 0x42b4a7
movzx eax, word [esi]
cmp eax, 0x30
jae 0x42a460
mov ebx, dword [ebp - 0x6c]
sub esi, dword [ebx + 0x1c]
sar esi, 1
inc esi
mov word [edx + 6], cx
xor eax, eax
mov word [edx + 2], si
mov word [edx + 4], ax
movzx eax, byte [0x4551ee]
mov esi, dword [ebp - 0x64]
lea edx, [edx + eax*2]
mov dword [ebp - 0x68], edx
cmp word [esi], 0x29
jne 0x42b4b5
add esi, 2
mov dword [ebp - 0x80], 0
mov dword [ebp - 0x64], esi
jmp 0x427710
add esi, 2
mov dword [ebp - 0x64], esi
movzx edx, word [esi]
cmp edx, 0x3d
je 0x42a512
cmp edx, 0x3e
je 0x42a512
cmp edx, 0x3c
jne 0x42b4c3
cmp dx, 0x3c
mov ecx, 0x27
mov eax, 0x3e
cmove ecx, eax
nop dword [eax]
add esi, 2
mov dword [ebp - 0x64], esi
movzx eax, word [esi]
cmp eax, ecx
jne 0x42a500
jmp 0x42a28c
xor ebx, ebx
mov edi, 0x29
cmp edx, 0x3e
mov edx, dword [ebp - 0x70]
sete bl
mov dword [ebp - 0x90], ebx
mov ebx, dword [ebp - 0x6c]
jmp 0x42ac90
mov ebx, dword [ebp - 0x6c]
mov edi, 0x29
mov edx, dword [ebp - 0x70]
mov dword [ebp - 0x90], 1
jmp 0x42ac90
add esi, 2
mov dword [ebp - 0x64], esi
mov dword [ebp - 0xc0], 0x29
jmp 0x42a716
test ecx, 0x2000
je 0x42a292
mov ecx, dword [ebp - 0x6c]
mov ebx, 0x84
mov edx, eax
jmp 0x42a162
mov ebx, dword [ebp - 0x6c]
lea eax, [ebp - 0x110]
push ebx
push 0
push dword [ebp - 0x98]
mov dword [ebp - 0xd4], esi
push dword [ebp - 0x70]
push eax
lea eax, [ebp - 0x64]
push eax
call fcn.00426d60
mov edx, dword [ebp - 0x70]
add esp, 0x18
mov edi, eax
cmp dword [edx], 0
jne 0x42b35f
test edi, edi
jne 0x42a5eb
cmp dword [ebp - 0x94], eax
mov eax, dword [ebp - 0x110]
je 0x42a5dd
cmp eax, 0xffff
jbe 0x42a5dd
lea ecx, [ebp - 0x34]
push ecx
push eax
call fcn.0043ae00
add esp, 8
mov edx, eax
jmp 0x4278c0
mov word [ebp - 0x34], ax
mov edx, 1
jmp 0x4278c0
cmp edi, 0x1a
jne 0x42a62a
mov esi, dword [ebp - 0x64]
cmp word [esi + 2], 0x5c
jne 0x42a612
cmp word [esi + 4], 0x45
jne 0x42a612
mov edx, dword [ebp - 0x68]
add esi, 4
add esi, 2
mov dword [ebp - 0x64], esi
jmp 0x427710
mov edx, dword [ebp - 0x68]
add esi, 2
mov dword [ebp - 0xb8], 1
mov dword [ebp - 0x64], esi
jmp 0x427710
cmp edi, 0x19
je case.default.0x429b50
mov ecx, dword [ebp - 0x8c]
cmp ecx, 0xfffffffe
jne 0x42a652
lea eax, [edi - 6]
cmp eax, 0x10
mov eax, 0xffffffff
cmovbe ecx, eax
mov dword [ebp - 0x8c], ecx
mov eax, dword [ebp - 0xdc]
mov dword [ebp - 0xe8], eax
mov eax, dword [ebp - 0xc8]
mov dword [ebp - 0xc4], eax
mov eax, dword [ebp - 0xbc]
mov dword [ebp - 0xd8], ecx
mov dword [ebp - 0xcc], eax
cmp edi, 0x1b
jne 0x42ac30
mov esi, dword [ebp - 0x64]
mov eax, 0x3e
add esi, 2
mov edi, 0x27
mov dword [ebp - 0x64], esi
cmp word [esi], 0x3c
cmove edi, eax
xor eax, eax
mov dword [ebp - 0x78], eax
mov dword [ebp - 0xe0], eax
movzx eax, word [esi + 2]
mov dword [ebp - 0xc0], edi
cmp eax, 0x2b
je 0x42a6d7
cmp eax, 0x2d
je 0x42a6d7
cmp eax, 0x30
jb 0x42a6c8
cmp eax, 0x39
jbe 0x42a6d7
mov dword [ebp - 0x90], 1
jmp 0x42ac90
movzx eax, word [esi + 4]
lea ecx, [esi + 4]
cmp eax, 0x30
jb 0x42a6f5
cmp ax, 0x39
ja 0x42a6f5
movzx eax, word [ecx + 2]
add ecx, 2
cmp eax, 0x30
jae 0x42a6e3
cmp word [ecx], di
je 0x42a710
mov eax, edx
add esi, 2
mov edx, dword [ebp - 0x68]
mov dword [ebp - 0x64], esi
mov dword [eax], 0x9d
jmp 0x427710
add esi, 2
mov dword [ebp - 0x64], esi
movzx edx, word [esi]
mov ebx, edx
cmp ebx, 0x2b
jne 0x42a7b4
add esi, 2
mov dword [ebp - 0x64], esi
movzx eax, word [esi]
cmp eax, 0x30
jb 0x42b4d1
cmp eax, 0x39
ja 0x42b4d1
movzx eax, word [esi]
xor edi, edi
cmp eax, 0x30
jb 0x42a77c
nop dword [eax]
cmp ax, 0x39
ja 0x42a77c
cmp edi, 0xccccccb
jg 0x42b52e
movzx eax, ax
lea edi, [edi + edi*4]
add esi, 2
lea edi, [edi - 0x18]
mov dword [ebp - 0x64], esi
lea edi, [eax + edi*2]
movzx eax, word [esi]
cmp eax, 0x30
jae 0x42a750
mov eax, dword [ebp - 0xc0]
cmp word [esi], ax
jne 0x42b563
cmp ebx, 0x2d
jne 0x42ac14
test edi, edi
je 0x42b558
mov ebx, dword [ebp - 0x6c]
mov eax, dword [ebx + 0x48]
sub eax, edi
lea edi, [eax + 1]
test edi, edi
jle 0x42b478
jmp 0x42aeb9
cmp ebx, 0x2d
jne 0x42a73f
movzx eax, word [esi + 2]
cmp eax, 0x30
jb case.0x42994e.34
cmp eax, 0x39
ja case.0x42994e.34
add esi, 2
mov dword [ebp - 0x64], esi
jmp 0x42a73f
xor eax, eax
lea ecx, [ebp - 0xa8]
xor ebx, ebx
mov dword [ebp - 0x90], eax
mov dword [ebp - 0xa8], ebx
cmp dx, 0x29
je 0x42a864
nop
cmp dx, 0x3a
je 0x42a858
movzx eax, dx
add esi, 2
sub eax, 0x2d
mov dword [ebp - 0x64], esi
cmp eax, 0x4b
ja case.0x42a812.46
movzx eax, byte [eax + 0x42b82c]
jmp dword [eax*4 + 0x42b80c]
lea ecx, [ebp - 0x90]
jmp 0x42a850
mov eax, dword [ebp - 0x6c]
or dword [ecx], 0x40
or dword [eax + 0x44], 0x400
jmp 0x42a850
or dword [ecx], 8
jmp 0x42a850
or dword [ecx], 0x400
jmp 0x42a850
or dword [ecx], 0x20
jmp 0x42a850
or dword [ecx], 0x80
jmp 0x42a850
or dword [ecx], 0x40000
movzx edx, word [esi]
cmp edx, 0x29
jne 0x42a7f0
mov ebx, dword [ebp - 0xa8]
mov eax, dword [ebp - 0x90]
or ebx, dword [ebp - 0x98]
not eax
mov ecx, dword [ebp - 0x6c]
and ebx, eax
cmp word [esi], 0x29
mov dword [ebp - 0xc0], ebx
jne 0x42a8e5
mov eax, dword [ecx + 0x18]
mov edx, dword [ebp - 0x68]
add eax, 4
cmp edx, eax
jne 0x42a89e
mov eax, dword [ebp - 0xa4]
test eax, eax
je 0x42a899
cmp dword [eax], 4
jne 0x42a89e
mov dword [ecx + 0x40], ebx
jmp 0x42a8c3
mov eax, ebx
shr eax, 0x12
and eax, 1
mov dword [ebp - 0x118], eax
xor eax, 1
mov dword [ebp - 0x124], eax
mov eax, ebx
shr eax, 3
and eax, 1
mov dword [ebp - 0xf0], eax
mov eax, dword [ebp - 0x138]
add esi, 2
mov dword [ebp - 0x98], ebx
mov dword [ebp - 0x80], 0
mov dword [ebp - 0x64], esi
mov dword [eax], ebx
mov ebx, ecx
jmp 0x427710
add esi, 2
mov ebx, 0x84
mov dword [ebp - 0x64], esi
jmp 0x42a15f
mov ecx, dword [edi + 0x24]
sub ecx, dword [edi + 0x14]
mov eax, dword [ebp - 0x68]
sar ecx, 1
mov dword [ebp - 0x80], eax
mov dword [ebp - 0xd0], ecx
mov word [eax], bx
mov edi, dword [edi + 0x74]
mov dword [ebp - 0xb0], eax
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0xa8], edi
mov dword [ebp - 0xf4], 0
mov esi, dword [eax + 0x48]
cmp ebx, 0x80
je 0x42a93f
cmp ebx, 0x81
je 0x42a93f
xor ecx, ecx
jmp 0x42a944
mov ecx, 1
cmp dword [ebp - 0xa4], 0
lea eax, [ebp - 0xf4]
mov dword [ebp - 0xec], 0
cmove eax, dword [ebp - 0xec]
push eax
push dword [ebp - 0x6c]
lea eax, [ebp - 0xf8]
push dword [ebp - 0x120]
push eax
lea eax, [ebp - 0x114]
push eax
lea eax, [ebp - 0x100]
push eax
lea eax, [ebp - 0x11c]
push eax
xor eax, eax
cmp ebx, 0x88
sete al
add eax, dword [ebp + 0x2c]
push eax
push edx
push dword [ebp - 0xe0]
lea eax, [ebp - 0x64]
push ecx
push dword [ebp - 0x70]
push eax
lea eax, [ebp - 0xb0]
push eax
push dword [ebp - 0xc0]
call fcn.0042b880
add esp, 0x3c
test eax, eax
je 0x42b35f
mov eax, dword [ebp - 0x6c]
dec dword [eax + 0x6c]
cmp ebx, 0x82
jne 0x42aa5c
cmp dword [eax + 0x48], esi
ja 0x42a9e5
mov eax, dword [ebp - 0x68]
mov ecx, 0x83
mov word [eax], cx
mov eax, dword [ebp - 0xf8]
mov ecx, dword [ebp - 0x100]
mov esi, dword [ebp - 0x64]
cmp word [esi], 0x29
jne 0x42b512
mov edx, dword [ebp - 0xa4]
test edx, edx
je 0x42aaec
mov edi, dword [ebp - 0xf4]
mov ecx, 0x7fffffeb
mov edx, dword [edx]
sub ecx, edx
lea eax, [edi - 4]
cmp ecx, eax
jb 0x42b33a
mov ecx, dword [ebp - 0xa4]
lea eax, [edi - 4]
mov ebx, dword [ebp - 0x6c]
add eax, edx
mov edx, dword [ebp - 0x68]
mov dword [ecx], eax
mov ecx, 2
mov dword [edx + 2], 0x790002
mov word [edx + 6], cx
add edx, 8
mov esi, dword [ebp - 0x64]
add esi, ecx
mov dword [ebp - 0x68], edx
mov dword [ebp - 0x64], esi
jmp 0x427710
cmp ebx, 0x7e
jl 0x42aa6c
cmp ebx, 0x81
jg 0x42aa6c
dec dword [eax + 0x70]
cmp ebx, 0x88
jne 0x42a9e5
cmp dword [ebp - 0xa4], 0
jne 0x42a9e5
mov esi, dword [ebp - 0x68]
xor edx, edx
mov ecx, esi
nop dword [eax]
movzx eax, word [ecx + 2]
inc edx
cmp word [ecx + eax*2], 0x79
lea ecx, [ecx + eax*2]
jne 0x42aa90
mov eax, 0xa4
cmp word [esi + 4], ax
jne 0x42aac4
cmp edx, 1
jg 0x42b4f0
mov eax, 0x92
mov word [esi + 4], ax
lea ebx, [eax + 0x12]
jmp 0x42a9e5
cmp edx, 2
jg 0x42b501
cmp edx, 1
jne 0x42a9e5
or eax, 0xffffffff
or ecx, eax
mov dword [ebp - 0xf8], eax
mov dword [ebp - 0x100], ecx
jmp 0x42a9f1
mov edx, dword [ebp - 0xb0]
mov dword [ebp - 0x68], edx
cmp ebx, 0xa4
je 0x4279ba
mov edi, dword [ebp - 0xc8]
mov dword [ebp - 0xc4], edi
mov edi, dword [ebp - 0xbc]
mov dword [ebp - 0xcc], edi
mov edi, dword [ebp - 0xdc]
mov dword [ebp - 0xe8], edi
mov edi, dword [ebp - 0x8c]
mov dword [ebp - 0xd8], edi
mov edi, dword [ebp - 0xa8]
mov dword [ebp - 0x104], 0
cmp ebx, 0x82
jl 0x42abe3
cmp dword [ebp - 0x8c], 0xfffffffe
jne 0x42ab9d
cmp ecx, 0xfffffffe
je 0x42ab9d
test ecx, ecx
js 0x42ab87
mov ebx, dword [ebp - 0x11c]
mov dword [ebp - 0xdc], ebx
mov dword [ebp - 0x8c], ecx
mov dword [ebp - 0x104], 1
mov dword [ebp - 0xd8], 0xffffffff
jmp 0x42abbb
mov dword [ebp - 0x8c], 0xffffffff
mov dword [ebp - 0xd8], 0xffffffff
jmp 0x42abbb
test ecx, ecx
js 0x42abbb
test eax, eax
jns 0x42abc3
mov eax, dword [ebp - 0x11c]
mov dword [ebp - 0x114], eax
mov eax, ecx
or eax, edi
mov dword [ebp - 0xf8], eax
test eax, eax
js 0x4279ba
mov ecx, dword [ebp - 0x114]
add esi, 2
mov ebx, dword [ebp - 0x6c]
mov dword [ebp - 0xc8], ecx
mov dword [ebp - 0xbc], eax
mov dword [ebp - 0x64], esi
jmp 0x427710
cmp ebx, 0x7e
jne 0x4279ba
test eax, eax
js 0x4279ba
mov ecx, dword [ebp - 0x114]
add esi, 2
mov ebx, dword [ebp - 0x6c]
mov dword [ebp - 0xc8], ecx
mov dword [ebp - 0xbc], eax
mov dword [ebp - 0x64], esi
jmp 0x427710
cmp ebx, 0x2b
jne 0x42aeb6
test edi, edi
je 0x42b558
mov ebx, dword [ebp - 0x6c]
add edi, dword [ebx + 0x48]
jmp 0x42aeb9
cmp edi, 0x1c
jne 0x42afc7
mov esi, dword [ebp - 0x64]
movzx eax, word [esi + 2]
cmp eax, 0x3c
je 0x42ac63
cmp eax, 0x27
je 0x42ac63
cmp eax, 0x7b
je 0x42ac63
add esi, 2
mov dword [edx], 0xa9
mov edx, dword [ebp - 0x68]
mov dword [ebp - 0x64], esi
jmp 0x427710
add esi, 2
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x64], esi
movzx eax, word [esi]
cmp eax, 0x3c
jne 0x42ac80
lea edi, [eax + 2]
jmp 0x42ac90
cmp eax, 0x27
mov edi, 0x7d
mov eax, 0x27
cmove edi, eax
add esi, 2
mov dword [ebp - 0x64], esi
mov ecx, esi
mov dword [ebp - 0x84], ecx
movzx eax, word [esi]
cmp eax, 0x30
jb 0x42acaf
cmp eax, 0x39
jbe 0x42b56e
mov edx, 0xff
cmp ax, dx
ja 0x42acdd
mov ecx, dword [ebx + 0x10]
nop dword [eax]
movzx eax, ax
test byte [eax + ecx], 0x10
je 0x42acd7
add esi, 2
mov dword [ebp - 0x64], esi
movzx eax, word [esi]
cmp ax, dx
jbe 0x42acc0
mov ecx, dword [ebp - 0x84]
mov edx, esi
sub edx, ecx
sar edx, 1
cmp dword [ebp - 0xa4], 0
mov dword [ebp - 0x9c], edx
je 0x42ad0c
test edx, edx
je 0x42b58c
cmp word [esi], di
jne 0x42b581
cmp edx, 0x20
jg 0x42b576
mov ebx, dword [ebx + 0x38]
xor eax, eax
mov dword [ebp - 0xc0], eax
xor ecx, ecx
mov eax, dword [ebp - 0x6c]
xor edi, edi
cmp cx, word [eax + 0x30]
mov ecx, dword [ebp - 0x84]
jae 0x42b478
mov esi, edi
movzx eax, word [ebx + 8]
cmp edx, eax
jne 0x42adb0
push edx
push dword [ebx]
push ecx
call fcn.0043af00
add esp, 0xc
test eax, eax
jne 0x42ada4
cmp dword [ebp - 0x90], 0
movzx eax, word [ebx + 0xa]
mov edi, dword [ebx + 4]
mov dword [ebp - 0xc0], eax
jne 0x42aeb6
cmp edi, 0x20
jge 0x42ad74
mov edx, 1
mov ecx, edi
mov eax, edx
shl eax, cl
jmp 0x42ad7b
mov eax, 1
mov edx, eax
mov ecx, dword [ebp - 0x6c]
or dword [ecx + 0x54], eax
cmp edi, dword [ecx + 0x50]
jbe 0x42ad89
mov dword [ecx + 0x50], edi
mov ecx, dword [ecx + 0x34]
test ecx, ecx
je 0x42ada4
movzx eax, word [ecx + 4]
cmp eax, edi
je 0x42ada0
mov ecx, dword [ecx]
test ecx, ecx
jne 0x42ad90
jmp 0x42ada4
mov word [ecx + 6], dx
mov ecx, dword [ebp - 0x84]
mov edx, dword [ebp - 0x9c]
mov eax, dword [ebp - 0x6c]
inc esi
add ebx, 0xc
movzx eax, word [eax + 0x30]
cmp esi, eax
jl 0x42ad30
test edi, edi
je 0x42b475
mov eax, dword [ebp - 0xc0]
test eax, eax
je 0x42afd3
xor ecx, ecx
xor ebx, ebx
mov dword [ebp - 0x90], ecx
cmp dword [ebp - 0xa4], ecx
jne 0x42ae54
mov eax, dword [ebp - 0x6c]
xor edi, edi
mov esi, dword [eax + 0x28]
cmp cx, word [eax + 0x30]
jae 0x42b597
nop dword [eax]
push edx
lea eax, [esi + 2]
push eax
push dword [ebp - 0x84]
call fcn.0043af00
mov edx, dword [ebp - 0x9c]
add esp, 0xc
mov ecx, dword [ebp - 0x90]
test eax, eax
jne 0x42ae36
cmp word [esi + edx*2 + 2], ax
jne 0x42ae36
test ecx, ecx
cmove ebx, edi
inc ecx
mov dword [ebp - 0x90], ecx
mov eax, dword [ebp - 0x6c]
inc edi
movzx eax, word [eax + 0x32]
lea esi, [esi + eax*2]
mov eax, dword [ebp - 0x6c]
movzx eax, word [eax + 0x30]
cmp edi, eax
jl 0x42ae00
test ecx, ecx
je 0x42b597
mov edi, dword [ebp - 0x8c]
mov eax, 0xffffffff
mov edx, dword [ebp - 0x68]
cmp edi, 0xfffffffe
mov dword [ebp - 0x80], edx
cmove edi, eax
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0x8c], edi
mov esi, dword [eax + 0x24]
sub esi, dword [eax + 0x14]
mov eax, 0
sar esi, 1
test byte [ebp - 0x98], 8
mov dword [ebp - 0xd0], esi
setne al
add eax, 0x73
mov word [edx], ax
mov word [edx + 2], bx
mov ebx, dword [ebp - 0x6c]
mov word [edx + 4], cx
add edx, 6
mov esi, dword [ebp - 0x64]
add esi, 2
mov dword [ebp - 0x68], edx
mov dword [ebp - 0x64], esi
jmp 0x427710
mov ebx, dword [ebp - 0x6c]
mov ecx, dword [ebx + 0x24]
sub ecx, dword [ebx + 0x14]
mov eax, dword [ebp - 0x68]
mov esi, dword [ebx + 0x18]
sar ecx, 1
cmp dword [ebp - 0xa4], 0
mov dword [ebp - 0x80], eax
mov dword [ebp - 0xd0], ecx
jne 0x42af7e
xor ecx, ecx
mov word [eax], cx
test edi, edi
je 0x42aefd
push edi
push dword [ebp - 0x94]
push dword [ebx + 0x18]
call fcn.004263b0
mov esi, eax
add esp, 0xc
mov eax, dword [ebp - 0x68]
test esi, esi
jne 0x42af52
cmp edi, dword [ebx + 0x4c]
ja 0x42b597
mov eax, dword [ebx + 0x18]
mov ecx, dword [ebx + 0x2c]
lea esi, [eax + edi*2]
mov eax, dword [ebx + 0x14]
lea eax, [eax + ecx*2]
add eax, 0xffffff38
cmp dword [ebx + 0x24], eax
jb 0x42af39
push ebx
call fcn.0042c180
mov ecx, dword [ebp - 0x70]
add esp, 4
mov dword [ecx], eax
test eax, eax
jne 0x42b35f
mov edx, dword [ebp - 0x68]
mov ecx, edx
sub ecx, dword [ebx + 0x18]
mov eax, dword [ebx + 0x24]
add ecx, 2
sar ecx, 1
mov word [eax], cx
add dword [ebx + 0x24], 2
jmp 0x42af81
cmp word [esi + 2], 0
jne 0x42af7e
cmp dword [ebp + 0x2c], 0
jg 0x42af7e
push ebx
push dword [ebp - 0x94]
push dword [ebp - 0x120]
push eax
push esi
call fcn.0042bc90
add esp, 0x14
test eax, eax
jne 0x42b5a5
mov edx, dword [ebp - 0x68]
mov eax, 0x75
mov dword [ebp - 0x104], 0
mov word [edx], ax
sub esi, dword [ebx + 0x18]
sar esi, 1
mov word [edx + 2], si
add edx, 4
cmp dword [ebp - 0x8c], 0xfffffffe
mov dword [ebp - 0x68], edx
jne 0x429b73
mov esi, dword [ebp - 0x64]
add esi, 2
mov dword [ebp - 0x8c], 0xffffffff
mov dword [ebp - 0x64], esi
jmp 0x427710
test edi, edi
jns 0x42b07e
neg edi
jmp 0x42afdc
mov ebx, dword [ebp - 0x6c]
mov ecx, dword [ebp - 0x8c]
mov edx, dword [ebp - 0x68]
cmp ecx, 0xfffffffe
mov eax, 0xffffffff
mov dword [ebp - 0x80], edx
cmove ecx, eax
mov eax, dword [ebx + 0x24]
sub eax, dword [ebx + 0x14]
sar eax, 1
test byte [ebp - 0x98], 8
mov dword [ebp - 0xd0], eax
mov eax, 0
setne al
mov dword [ebp - 0x8c], ecx
add eax, 0x71
mov word [edx], ax
mov word [edx + 2], di
add edx, 4
mov dword [ebp - 0x68], edx
cmp edi, 0x20
jge 0x42b032
mov esi, 1
mov ecx, edi
mov eax, esi
shl eax, cl
jmp 0x42b039
mov eax, 1
mov esi, eax
or dword [ebx + 0x54], eax
cmp edi, dword [ebx + 0x50]
jbe 0x42b044
mov dword [ebx + 0x50], edi
mov ecx, dword [ebx + 0x34]
test ecx, ecx
je 0x429b73
nop
movzx eax, word [ecx + 4]
cmp eax, edi
je 0x42b06c
mov ecx, dword [ecx]
test ecx, ecx
jne 0x42b050
mov esi, dword [ebp - 0x64]
add esi, 2
mov dword [ebp - 0x64], esi
jmp 0x427710
mov word [ecx + 6], si
mov esi, dword [ebp - 0x64]
add esi, 2
mov dword [ebp - 0x64], esi
jmp 0x427710
cmp edi, 0xf
je 0x42b14b
cmp edi, 0x10
je 0x42b14b
cmp edi, 0xe
jne 0x42b0af
test dword [ebp - 0x98], 0x100000
je 0x42b101
mov esi, dword [ebp - 0x64]
mov dword [edx], 0xb7
jmp 0x42b5d6
cmp edi, 5
je 0x42b0be
cmp edi, 4
je 0x42b0be
cmp edi, 1
jne 0x42b0cb
cmp dword [ebx + 0x68], 0
jne 0x42b0cb
mov dword [ebx + 0x68], 1
lea esi, [edi - 0x1d]
cmp esi, 5
ja 0x42b0f7
mov esi, dword [esi*4 + 0x47d0f0]
mov eax, dword [ebp - 0x64]
sub esi, 2
mov edx, dword [ebp - 0x68]
add eax, 2
add esi, 2
mov dword [ebp - 0x88], eax
mov dword [ebp - 0x64], esi
jmp 0x427710
cmp edi, 5
jle 0x42b109
cmp edi, 0x17
jge 0x42b109
mov edx, dword [ebp - 0x68]
mov dword [ebp - 0x80], edx
jmp 0x42b113
mov edx, dword [ebp - 0x68]
mov dword [ebp - 0x80], 0
mov ecx, dword [ebx + 0x24]
sub ecx, dword [ebx + 0x14]
sar ecx, 1
cmp dword [ebp - 0x94], 0
mov dword [ebp - 0xd0], ecx
jne 0x42b134
cmp edi, 0xe
jne 0x42b134
mov edi, 0xd
mov word [edx], di
add edx, 2
mov esi, dword [ebp - 0x64]
add esi, 2
mov dword [ebp - 0x68], edx
mov dword [ebp - 0x64], esi
jmp 0x427710
push ebx
push edx
lea eax, [ebp - 0xa8]
mov dword [ebp - 0xc0], 0
push eax
lea eax, [ebp - 0xc0]
mov dword [ebp - 0xa8], 0
push eax
lea eax, [ebp - 0x13c]
push eax
lea eax, [ebp - 0x64]
push eax
call fcn.0042c920
add esp, 0x18
test eax, eax
je 0x42b35f
mov eax, dword [ebx + 0x24]
sub eax, dword [ebx + 0x14]
mov edx, dword [ebp - 0x68]
sar eax, 1
mov dword [ebp - 0xd0], eax
xor eax, eax
cmp edi, 0x10
mov dword [ebp - 0x80], edx
sete al
xor ecx, ecx
cmp eax, dword [ebp - 0x13c]
movzx eax, word [ebp - 0xc0]
setne cl
add ecx, 0xf
mov word [edx], cx
mov word [edx + 2], ax
movzx eax, word [ebp - 0xa8]
mov word [edx + 4], ax
add edx, 6
mov esi, dword [ebp - 0x64]
add esi, 2
mov dword [ebp - 0x68], edx
mov dword [ebp - 0x64], esi
jmp 0x427710
mov eax, dword [ebp - 0x98]
test al, 8
mov eax, 0
setne al
xor ecx, ecx
add eax, 0x1d
mov word [esi], ax
add esi, 2
mov dword [ebp - 0x68], esi
test edx, edx
je 0x42b216
mov ax, word [ebp + ecx*2 - 0x34]
inc ecx
mov word [esi], ax
add esi, 2
cmp ecx, edx
jb 0x42b203
mov dword [ebp - 0x68], esi
mov ax, word [ebp - 0x34]
cmp ax, 0xd
je 0x42b226
cmp ax, 0xa
jne 0x42b22d
or dword [ebx + 0x44], 0x800
mov edi, dword [ebp - 0x8c]
mov ecx, dword [ebp - 0xc8]
mov dword [ebp - 0xc4], ecx
cmp edi, 0xfffffffe
jne 0x42b2d3
mov ecx, dword [ebp - 0xbc]
mov dword [ebp - 0xd8], 0xffffffff
mov dword [ebp - 0xcc], ecx
cmp edx, 1
je 0x42b291
cmp dword [ebp - 0xf0], 0
je 0x42b291
mov dword [ebp - 0xbc], 0xffffffff
mov dword [ebp - 0x8c], 0xffffffff
mov esi, dword [ebp - 0x64]
mov edx, dword [ebp - 0x68]
add esi, 2
mov dword [ebp - 0x64], esi
jmp 0x427710
movzx eax, ax
cmp edx, 1
mov edx, dword [ebp - 0x68]
mov dword [ebp - 0xdc], eax
mov eax, dword [ebp - 0xf0]
mov dword [ebp - 0x8c], eax
je 0x429b73
mov esi, dword [ebp - 0x64]
movzx ecx, word [edx - 2]
add esi, 2
mov eax, dword [ebx + 0x74]
mov dword [ebp - 0xc8], ecx
mov dword [ebp - 0xbc], eax
mov dword [ebp - 0x64], esi
jmp 0x427710
mov eax, dword [ebp - 0xdc]
mov dword [ebp - 0xe8], eax
mov eax, dword [ebp - 0xbc]
mov dword [ebp - 0xd8], edi
mov dword [ebp - 0xcc], eax
cmp edx, 1
je 0x42b310
cmp dword [ebp - 0xf0], 0
je 0x42b310
mov esi, dword [ebp - 0x64]
mov edx, dword [ebp - 0x68]
add esi, 2
mov dword [ebp - 0x64], esi
jmp 0x427710
mov edx, dword [ebp - 0x68]
mov eax, dword [ebx + 0x74]
mov esi, dword [ebp - 0x64]
or eax, dword [ebp - 0xf0]
add esi, 2
movzx ecx, word [edx - 2]
mov dword [ebp - 0xc8], ecx
mov dword [ebp - 0xbc], eax
mov dword [ebp - 0x64], esi
jmp 0x427710
mov eax, dword [ebp - 0x70]
mov dword [eax], 0x78
jmp 0x42b5d6
mov eax, dword [ebp - 0x70]
mov dword [eax], 0x6a
jmp 0x42b5d6
mov eax, dword [ebp - 0x70]
mov dword [eax], 0x82
mov esi, dword [ebp - 0x64]
jmp 0x42b5d6
mov eax, dword [ebp - 0x70]
mov dword [eax], 0x71
jmp 0x42b5d6
mov esi, dword [ebp - 0x64]
mov dword [edx], 0x6b
jmp 0x42b5d6
mov esi, dword [ebp - 0x64]
mov dword [edx], 0xab
jmp 0x42b5d6
mov dword [esi], 0x96
mov esi, dword [ebp - 0x64]
jmp 0x42b5d6
mov eax, dword [ebp - 0x70]
mov esi, dword [ebp - 0x64]
mov dword [eax], 0x96
jmp 0x42b5d6
mov eax, dword [ebp - 0x70]
mov dword [eax], 0x6c
jmp 0x42b5d6
mov ecx, dword [ebp - 0x70]
xor eax, eax
cmp word [esi + 2], 0x3a
setne al
add eax, 0x70
mov dword [ecx], eax
jmp 0x42b5d6
mov eax, dword [ebp - 0x70]
mov dword [eax], 0x6e
jmp 0x42b5d6
mov dword [eax], 0x6d
jmp 0x42b5d6
mov eax, dword [ebp - 0x70]
mov dword [eax], 0xb0
jmp 0x42b5d6
mov eax, dword [ebp - 0x70]
mov esi, dword [ebp - 0x64]
mov dword [eax], 0x9f
jmp 0x42b5d6
mov eax, dword [ebp - 0x70]
mov esi, dword [ebp - 0x64]
mov dword [eax], 0xa6
jmp 0x42b5d6
mov eax, dword [ebp - 0x70]
mov esi, dword [ebp - 0x64]
mov dword [eax], 0xa0
jmp 0x42b5d6
mov eax, dword [ebp - 0x70]
mov dword [eax], 0xa0
jmp 0x42b5d6
mov eax, dword [ebp - 0x70]
mov dword [eax], 0x80
jmp 0x42b5d6
mov eax, dword [ebp - 0x70]
mov dword [eax], 0xb3
jmp 0x42b5d6
mov eax, dword [ebp - 0x70]
mov dword [eax], 0x90
jmp 0x42b5d6
mov eax, dword [ebp - 0x70]
mov dword [eax], 0x87
jmp 0x42b5d6
mov esi, dword [ebp - 0x64]
mov eax, dword [ebp - 0x70]
mov dword [eax], 0x73
jmp 0x42b5d6
mov eax, dword [ebp - 0x70]
sub esi, 2
mov dword [eax], 0x7e
jmp 0x42b5d6
mov eax, dword [ebp - 0x70]
mov esi, edi
mov dword [eax], 0xb5
jmp 0x42b5d6
mov eax, dword [ebp - 0x70]
mov dword [eax], 0x8a
jmp 0x42b5d6
mov eax, dword [ebp - 0x70]
mov dword [eax], 0x8b
jmp 0x42b5d6
mov eax, dword [ebp - 0x70]
mov dword [eax], 0x8d
jmp 0x42b5d6
mov eax, dword [ebp - 0x70]
mov dword [eax], 0xa3
jmp 0x42b5d6
mov eax, dword [ebp - 0x70]
sub esi, 2
mov dword [eax], 0x6f
jmp 0x42b5d6
mov eax, dword [ebp - 0x70]
mov esi, dword [ebp - 0x64]
mov dword [eax], 0x9a
jmp 0x42b5d6
mov eax, dword [ebp - 0x70]
mov esi, dword [ebp - 0x64]
mov dword [eax], 0x7f
jmp 0x42b5d6
mov eax, dword [ebp - 0x70]
mov dword [eax], 0x72
jmp 0x42b5d6
mov eax, dword [ebp - 0x70]
mov dword [eax], 0x77
jmp 0x42b5d6
movzx eax, word [esi]
cmp eax, 0x30
jb 0x42b54a
cmp ax, 0x39
ja 0x42b54a
add esi, 2
mov dword [ebp - 0x64], esi
movzx eax, word [esi]
cmp eax, 0x30
jae 0x42b536
mov eax, dword [ebp - 0x70]
mov dword [eax], 0xa1
jmp 0x42b5d6
mov eax, dword [ebp - 0x70]
mov dword [eax], 0x9e
jmp 0x42b5d6
mov eax, dword [ebp - 0x70]
mov dword [eax], 0x81
jmp 0x42b5d6
mov dword [edx], 0x90
jmp 0x42b5d6
mov eax, dword [ebp - 0x70]
mov dword [eax], 0x94
jmp 0x42b5d6
mov eax, dword [ebp - 0x70]
mov dword [eax], 0x8e
jmp 0x42b5d6
mov eax, dword [ebp - 0x70]
mov dword [eax], 0xa2
jmp 0x42b5d6
mov eax, dword [ebp - 0x70]
mov esi, dword [ebp - 0x64]
mov dword [eax], 0x73
jmp 0x42b5d6
mov eax, dword [ebp - 0x70]
mov esi, dword [ebp - 0x64]
mov dword [eax], 0x8c
jmp 0x42b5d6
add ecx, eax
mov dword [edx], ecx
pop edi
pop esi
mov eax, 1
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0042520b
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x70]
mov dword [eax], 0x98
mov edi, dword [ebp - 0x74]
mov ecx, dword [ebp - 4]
xor eax, eax
mov dword [edi], esi
xor ecx, ebp
pop edi
pop esi
pop ebx
call fcn.0042520b
mov esp, ebp
pop ebp
ret