Function at 0x428246
Capabilities:
Encode data using base64

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 0x426ee1
mov eax, dword [ebp - 0x88]
test eax, eax
je 0x426ee1
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 0x426f97
cmp edx, eax
ja 0x42ad7d
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 0x42aaea
lea eax, [edx + ecx]
mov edx, dword [ebp - 0x80]
mov dword [ebx], eax
test edx, edx
je 0x426f83
mov ecx, dword [ebp - 0x10c]
cmp edx, ecx
jbe 0x426f75
mov ebx, dword [ebp - 0x68]
mov eax, ebx
sub eax, edx
and eax, 0xfffffffe
push eax
push edx
push ecx
call fcn.0043e460
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 0x426fa3
mov edx, dword [ebp - 0x10c]
mov ecx, dword [ebp - 0x6c]
mov dword [ebp - 0x68], edx
mov dword [ebp - 0x108], edx
jmp 0x426fa3
mov ecx, dword [ebp - 0x6c]
cmp dword [ecx + 0x24], eax
ja 0x42ad7d
cmp dword [ebp - 0xb8], 0
je 0x427178
test edi, edi
jne 0x427149
cmp esi, dword [ecx + 0x20]
jae 0x427178
mov eax, dword [ebp - 0xe4]
test eax, eax
je 0x426fee
cmp dword [ebp - 0xa4], 0
jne 0x426fe4
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.0x427353.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 [0x4551de]
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 0x42706d
and edi, 0xfc00
cmp edi, 0xd800
jne 0x42706d
mov ax, word [esi + 2]
add esi, 2
mov ecx, 0xfc00
and ax, cx
mov ecx, 0xdc00
cmp ax, cx
jne 0x42706d
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 0x42a997
test al, 8
je 0x42a999
movzx ecx, word [ebp - 0x34]
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4270ca
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 0x4270d3
add eax, 0x7f
sar eax, 7
movzx eax, byte [eax + 0x4578b8]
shl eax, 7
and ecx, 0x8000007f
jns 0x4270ed
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
movzx eax, word [eax*2 + 0x459ab8]
movzx eax, byte [eax*8 + 0x45623b]
test eax, eax
je 0x42a991
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 0x429323
mov esi, dword [ebp - 0x64]
add esi, 2
mov dword [ebp - 0xd8], 0xffffffff
mov dword [ebp - 0x8c], 0xffffffff
mov dword [ebp - 0x64], esi
jmp 0x426ec0
cmp edi, 0x5c
jne 0x426fc1
cmp word [esi + 2], 0x45
jne 0x426fc1
mov dword [ebp - 0xb8], 0
add esi, 2
mov ebx, dword [ebp - 0x6c]
add esi, 2
mov dword [ebp - 0x64], esi
jmp 0x426ec0
mov ebx, dword [ebp - 0x98]
and ebx, 0x80
je 0x42727b
nop word [eax + eax]
cmp edi, 0xff
ja 0x4271b7
mov eax, dword [ecx + 0x10]
nop dword [eax + eax]
test byte [eax + edi], 1
je 0x4271b7
add esi, 2
mov dword [ebp - 0x64], esi
movzx edi, word [esi]
cmp edi, 0xff
jbe 0x4271a0
cmp edi, 0x23
jne 0x427278
add esi, 2
mov dword [ebp - 0x64], esi
movzx edi, word [esi]
test di, di
je 0x427209
nop
mov edx, dword [ecx + 0x58]
test edx, edx
je 0x42720e
mov ecx, dword [ecx + 0x20]
cmp esi, ecx
jae 0x427237
push dword [ebp - 0x94]
mov eax, dword [ebp - 0x6c]
add eax, 0x5c
push eax
push ecx
push edx
push esi
call fcn.0043a430
mov esi, dword [ebp - 0x64]
add esp, 0x14
mov ecx, dword [ebp - 0x6c]
test eax, eax
je 0x42723a
mov eax, dword [ecx + 0x5c]
lea esi, [esi + eax*2]
mov dword [ebp - 0x64], esi
movzx edi, word [esi]
jmp 0x427190
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 0x42723a
cmp di, word [ecx + 0x60]
jne 0x42723a
cmp edx, 1
je 0x427200
mov ax, word [esi + 2]
cmp ax, word [ecx + 0x62]
je 0x427200
jmp 0x42723a
mov ecx, dword [ebp - 0x6c]
add esi, 2
cmp dword [ebp - 0x94], 0
mov dword [ebp - 0x64], esi
je 0x427264
mov ax, word [esi]
mov edx, 0xfc00
and ax, dx
mov edx, 0xdc00
cmp ax, dx
jne 0x427264
add esi, 2
mov dword [ebp - 0x64], esi
movzx edi, word [esi]
test di, di
jne 0x4271d0
movzx edi, word [esi]
jmp 0x427190
mov edx, dword [ebp - 0x68]
cmp edi, 0x2a
je 0x4272ec
cmp edi, 0x2b
je 0x4272ec
cmp edi, 0x3f
je 0x4272ec
cmp edi, 0x7b
jne 0x42729f
lea eax, [esi + 2]
push eax
call fcn.0042c360
add esp, 4
test eax, eax
jne 0x4272ec
mov eax, dword [ebp - 0x88]
xor ecx, ecx
cmp dword [ebp - 0xe4], ecx
je 0x4272f7
test eax, eax
jne 0x4272f7
mov eax, dword [ebp - 0xfc]
dec dword [ebp - 0xfc]
test eax, eax
jg 0x4272f1
cmp dword [ebp - 0xa4], ecx
jne 0x4272e4
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 0x4272f1
mov ecx, 1
mov eax, dword [ebp - 0x88]
test byte [ebp - 0x98], 4
je 0x427340
test ecx, ecx
jne 0x427340
test eax, eax
jne 0x427340
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 [0x4551de]
lea esi, [esi + eax*2]
mov dword [ebp - 0x68], esi
mov esi, dword [ebp - 0x64]
jmp 0x427343
mov edx, dword [ebp - 0x6c]
cmp edi, 0x7c
ja case.0x427353.1
movzx eax, byte [edi + 0x42add4]
jmp dword [eax*4 + 0x42ada0]
cmp esi, dword [edx + 0x20]
jb case.0x427353.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 0x42ad67
sub ecx, dword [ebp - 0x108]
mov ebx, 0x7fffffeb
mov eax, dword [edx]
sub ebx, eax
sar ecx, 1
cmp ebx, ecx
jae 0x42ad63
mov eax, dword [ebp - 0x70]
mov dword [eax], 0x78
jmp 0x42ad89
test dword [ebp - 0x98], 0x400
mov dword [ebp - 0x80], 0
je 0x427432
cmp dword [ebp - 0x8c], 0xfffffffe
jne 0x427410
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 0x426ec0
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 0x426ec0
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 0x426ec0
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 0x426ec0
push 6
push 0x454e58
add esi, 2
push esi
call fcn.0043a6f0
add esp, 0xc
test eax, eax
mov eax, dword [ebp - 0x64]
jne 0x427546
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 0x426ec0
push 6
add eax, 2
push str._:_:__
push eax
call fcn.0043a6f0
mov ebx, dword [ebp - 0x6c]
add esp, 0xc
test eax, eax
jne 0x427582
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 0x426ec0
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 0x4275ac
cmp eax, 0x2e
je 0x4275ac
cmp eax, 0x3d
jne 0x4275c7
lea eax, [ebp - 0xd4]
push eax
push esi
call fcn.00426ca0
mov esi, dword [ebp - 0x64]
add esp, 8
test eax, eax
jne 0x42ab6e
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 0x427609
add esi, 2
cmp word [esi], 0x45
je 0x4275d0
push 3
push 0x454e68
push esi
call fcn.0043a6f0
mov esi, dword [ebp - 0x64]
add esp, 0xc
test eax, eax
jne 0x427674
mov ecx, dword [ebp - 0x90]
add esi, 6
jmp 0x4275d0
test ecx, ecx
jne 0x427617
cmp edi, 0x5e
jne 0x427617
lea ecx, [edi - 0x5d]
jmp 0x4275c9
cmp edi, 0x5d
jne 0x427674
test byte [ebx + 0x40], 1
je 0x427674
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 0x426ec0
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 0x4276c7
cmp esi, dword [ecx + 0x20]
jae 0x42aaf8
cmp dword [ebp - 0x94], 0
je 0x427715
mov eax, edi
and eax, 0xfc00
cmp eax, 0xd800
jne 0x42770f
movzx edi, word [esi]
mov eax, edi
and eax, 0xfc00
cmp eax, 0xd800
jne 0x42770f
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 0x42773f
cmp edi, 0x5c
jne 0x42798f
cmp word [esi + 2], 0x45
jne 0x42798f
mov dword [ebp - 0xb8], 0
add esi, 2
jmp 0x427e8a
cmp edi, 0x5b
jne 0x427950
movzx eax, word [esi + 2]
cmp eax, 0x3a
je 0x42775f
cmp eax, 0x2e
je 0x42775f
cmp eax, 0x3d
jne 0x42798f
lea eax, [ebp - 0xd4]
push eax
push esi
call fcn.00426ca0
mov esi, dword [ebp - 0x64]
add esp, 8
test eax, eax
je 0x42798f
mov edi, dword [ecx + 0xc]
xor ebx, ebx
cmp word [esi + 2], 0x3a
jne 0x42ab17
add esi, 4
mov dword [ebp - 0x64], esi
cmp word [esi], 0x5e
jne 0x4277a7
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.00426c50
mov ecx, eax
add esp, 8
test ecx, ecx
js 0x42ab06
mov eax, dword [ebp - 0x98]
test al, 8
je 0x4277d7
xor edx, edx
cmp ecx, 2
cmovle ecx, edx
test eax, 0x20000
je 0x42789f
mov eax, ebx
neg eax
sbb eax, eax
and eax, 0xe
add eax, ecx
mov esi, dword [eax*4 + 0x47d108]
test esi, esi
je 0x427818
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 0x427e90
mov eax, ecx
sub eax, 8
je 0x427835
sub eax, 1
je 0x42782e
sub eax, 1
jne 0x42789f
lea edx, [eax + 0xd]
jmp 0x42783a
mov edx, 0xc
jmp 0x42783a
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 0x427e93
lea ecx, [ecx + ecx*2]
mov eax, dword [ecx*4 + 0x454c58]
mov esi, dword [ecx*4 + 0x454c60]
movups xmm0, xmmword [eax + edi]
movups xmmword [ebp - 0x54], xmm0
movups xmm0, xmmword [eax + edi + 0x10]
mov eax, dword [ecx*4 + 0x454c5c]
movups xmmword [ebp - 0x44], xmm0
test eax, eax
js 0x4278f3
xor ecx, ecx
lea edx, [eax + edi]
test esi, esi
js 0x4278e4
mov al, byte [edx + ecx]
or byte [ebp + ecx - 0x54], al
inc ecx
cmp ecx, 0x20
jb 0x4278d5
jmp 0x4278f3
mov al, byte [edx + ecx]
not al
and byte [ebp + ecx - 0x54], al
inc ecx
cmp ecx, 0x20
jb 0x4278e4
test esi, esi
jns 0x4278f9
neg esi
cmp esi, 1
jne 0x427904
and byte [ebp - 0x53], 0xc3
jmp 0x42790d
cmp esi, 2
jne 0x42790d
and byte [ebp - 0x49], 0x7f
xor ecx, ecx
test ebx, ebx
je 0x427925
mov al, byte [ebp + ecx - 0x54]
not al
or byte [ebp + ecx - 0x24], al
inc ecx
cmp ecx, 0x20
jb 0x427913
jmp 0x427933
mov al, byte [ebp + ecx - 0x54]
or byte [ebp + ecx - 0x24], al
inc ecx
cmp ecx, 0x20
jb 0x427925
mov esi, dword [ebp - 0xd4]
mov ebx, 1
add esi, 2
mov dword [ebp - 0xcc], 2
jmp 0x427e81
cmp edi, 0x5c
jne 0x42798f
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.00426510
mov edx, dword [ebp - 0x70]
add esp, 0x18
mov edi, eax
cmp dword [edx], 0
jne 0x42ab0f
test edi, edi
jne 0x4279d3
mov edi, dword [ebp - 0x110]
mov esi, dword [ebp - 0x64]
cmp word [esi + 2], 0x5c
jne 0x4279b4
cmp word [esi + 4], 0x45
jne 0x4279b4
add esi, 4
mov dword [ebp - 0xb8], 0
mov dword [ebp - 0x64], esi
cmp word [esi + 2], 0x5c
je 0x427996
mov ecx, esi
cmp edi, 0xd
je 0x4279c4
cmp edi, 0xa
jne 0x427ca0
mov edx, dword [ebp - 0x6c]
or dword [edx + 0x44], 0x800
jmp 0x427ca3
cmp edi, 5
jne 0x4279df
mov edi, 8
jmp 0x42798c
cmp edi, 0xc
je 0x42ab33
cmp edi, 0x1a
jne 0x427a15
mov esi, dword [ebp - 0x64]
cmp word [esi + 2], 0x5c
jne 0x427a06
cmp word [esi + 4], 0x45
jne 0x427a06
add esi, 4
jmp 0x427e87
mov dword [ebp - 0xb8], 1
jmp 0x427e87
cmp edi, 0x19
je 0x427a7e
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.0x427a41.12
movzx eax, byte [eax + 0x42ae88]
jmp dword [eax*4 + 0x42ae54]
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 0x427e90
xor ecx, ecx
nop dword [eax]
mov al, byte [esi + ecx + 0x40]
or byte [ebp + ecx - 0x24], al
inc ecx
cmp ecx, 0x20
jb 0x427a70
mov esi, dword [ebp - 0x64]
jmp 0x427e87
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 0x427a92
mov esi, dword [ebp - 0x64]
jmp 0x427e87
xor ecx, ecx
nop dword [eax]
mov al, byte [esi + ecx + 0xa0]
or byte [ebp + ecx - 0x24], al
inc ecx
cmp ecx, 0x20
jb 0x427ab0
mov esi, dword [ebp - 0x64]
jmp 0x427e87
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 0x427ae0
mov esi, dword [ebp - 0x64]
jmp 0x427e87
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 0x427b02
mov esi, dword [ebp - 0x64]
jmp 0x427e87
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 0x427b30
mov esi, dword [ebp - 0x64]
jmp 0x427e87
push 0xffffffffffffffff
push 0x455258
push ecx
push dword [ebp - 0x98]
lea eax, [ebp - 0xa0]
push eax
lea eax, [ebp - 0x24]
push eax
call fcn.00425cf0
mov esi, dword [ebp - 0x64]
add esp, 0x18
jmp 0x427e87
push 0x455258
push ecx
push dword [ebp - 0x98]
lea eax, [ebp - 0xa0]
push eax
lea eax, [ebp - 0x24]
push eax
call fcn.00425e60
mov esi, dword [ebp - 0x64]
add esp, 0x14
jmp 0x427e87
push 0xffffffffffffffff
push 0x4552a8
push ecx
push dword [ebp - 0x98]
lea eax, [ebp - 0xa0]
push eax
lea eax, [ebp - 0x24]
push eax
call fcn.00425cf0
mov esi, dword [ebp - 0x64]
add esp, 0x18
jmp 0x427e87
push 0x4552a8
push ecx
push dword [ebp - 0x98]
lea eax, [ebp - 0xa0]
push eax
lea eax, [ebp - 0x24]
push eax
call fcn.00425e60
mov esi, dword [ebp - 0x64]
add esp, 0x14
jmp 0x427e87
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.0042c0d0
add esp, 0x18
test eax, eax
je 0x42ab0f
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 0x427e93
mov edx, dword [ebp - 0x6c]
cmp dword [ebp - 0xb8], 0
jne 0x427e33
cmp word [esi + 2], 0x2d
jne 0x427e33
add esi, 4
mov dword [ebp - 0x64], esi
cmp word [esi], 0x5c
jne 0x427d14
cmp word [esi + 2], 0x45
jne 0x427cdc
add esi, 4
mov dword [ebp - 0x64], esi
cmp word [esi], 0x5c
je 0x427cc7
jmp 0x427d14
cmp word [esi], 0x5c
jne 0x427d14
cmp word [esi + 2], 0x51
jne 0x427d14
add esi, 4
mov dword [ebp - 0x64], esi
cmp word [esi], 0x5c
jne 0x427d0a
cmp word [esi + 2], 0x45
jne 0x427d0a
add esi, 4
mov dword [ebp - 0x64], esi
cmp word [esi], 0x5c
je 0x427ce2
jmp 0x427d14
mov dword [ebp - 0xb8], 1
movzx eax, word [esi]
test ax, ax
je 0x427e2e
cmp dword [ebp - 0xb8], 0
jne 0x427d32
cmp eax, 0x5d
je 0x427e2e
cmp dword [ebp - 0x94], 0
mov ecx, eax
mov dword [ebp - 0xc4], ecx
je 0x427d75
and eax, 0xfc00
cmp eax, 0xd800
jne 0x427d75
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 0x427df9
cmp ecx, 0x5c
jne 0x427dc6
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.00426510
add esp, 0x18
cmp dword [esi], 0
jne 0x42ab0f
test eax, eax
je 0x427dbe
cmp eax, 5
jne 0x42ab41
lea ecx, [eax + 3]
jmp 0x427df6
mov ecx, dword [ebp - 0xc4]
jmp 0x427df6
cmp ecx, 0x5b
jne 0x427df9
movzx eax, word [esi + 2]
cmp eax, 0x3a
je 0x427dde
cmp eax, 0x2e
je 0x427dde
cmp eax, 0x3d
jne 0x427df9
lea eax, [ebp - 0xd4]
push eax
push esi
call fcn.00426ca0
add esp, 8
test eax, eax
jne 0x42ab4f
mov esi, dword [ebp - 0x64]
cmp ecx, edi
jb 0x42ab60
je 0x427e33
mov dword [ebp - 0xcc], 2
cmp ecx, 0xd
je 0x427e17
cmp ecx, 0xa
jne 0x427e26
mov eax, dword [ebp - 0x6c]
push ecx
push edi
push eax
or dword [eax + 0x44], 0x800
jmp 0x427e63
mov eax, dword [ebp - 0x6c]
push ecx
push edi
push eax
jmp 0x427e63
mov esi, ecx
mov dword [ebp - 0x64], esi
mov eax, dword [ebp - 0xcc]
cmp eax, 2
jge 0x427e45
inc eax
mov dword [ebp - 0xcc], eax
cmp dword [ebp - 0xb8], 0
jne 0x427e5e
cmp eax, 1
jne 0x427e5e
cmp word [esi + 2], 0x5d
je 0x428007
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.00426120
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 0x427eb3
test eax, eax
je 0x427eb3
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 0x427eeb
cmp dword [ebp - 0xa4], 0
mov ebx, dword [ebp - 0x84]
mov dword [ebp - 0xa8], 1
je 0x427eeb
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 0x4276b7
test eax, eax
jne 0x4276b7
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 0x428199
test edx, edx
je 0x427f6a
test dword [ebp - 0x98], 0x20000
je 0x428199
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 0x427fa6
or eax, 4
mov word [edi + 4], ax
test ebx, ebx
jle 0x428171
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.0043e460
add esp, 0xc
test esi, esi
je 0x427fea
mov eax, dword [ebp - 0x7c]
test eax, eax
jne 0x427fea
xor ecx, ecx
nop dword [eax]
not byte [ebp + ecx - 0x24]
inc ecx
cmp ecx, 0x20
jb 0x427fe0
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 0x428177
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 0x42813e
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 0x4280d5
test cl, 8
je 0x4280d8
mov eax, edi
test eax, eax
jns 0x42807a
add eax, 0x7f
sar eax, 7
movzx ecx, byte [eax + 0x4578b8]
mov eax, edi
shl ecx, 7
and eax, 0x8000007f
jns 0x428095
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x459ab8]
movzx eax, byte [eax*8 + 0x45623b]
test eax, eax
je 0x4280cf
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 0x426ec0
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 0x42811f
cmp edi, 0xffff
jbe 0x42811f
push edx
push edi
call fcn.0043a5b0
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 0x426ec0
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 0x426ec0
cmp dword [ebp - 0x94], 0
je 0x428163
cmp edi, 0xffff
jbe 0x428163
lea eax, [ebp - 0x34]
push eax
push edi
call fcn.0043a5b0
add esp, 8
mov edx, eax
jmp 0x42706d
mov word [ebp - 0x34], di
mov edx, 1
jmp 0x42706d
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 0x426ec0
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 0x4281da
test esi, esi
je 0x4281ca
xor ecx, ecx
nop
not byte [ebp + ecx - 0x24]
inc ecx
cmp ecx, 0x20
jb 0x4281c0
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 0x426ec0
test ecx, ecx
je case.0x427353.1
push dword [ebp - 0x70]
lea eax, [ebp - 0xac]
add esi, 2
push eax
lea eax, [ebp - 0xb4]
push eax
push esi
call fcn.0042d3b0
mov esi, eax
add esp, 0x10
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x64], esi
cmp dword [eax], 0
jne 0x42ad86
mov edx, dword [ebp - 0xac]
mov edi, dword [ebp - 0xb4]
jmp 0x42825c
xor edi, edi
or edx, 0xffffffff
jmp 0x42824d
mov edi, 1
or edx, 0xffffffff
jmp 0x42824d
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 0x42ab93
test edi, edi
jne 0x42829b
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 0x4283b3
add esi, 2
mov edx, 0xff
nop dword [eax]
movzx eax, word [esi]
mov ebx, dword [ebp - 0x6c]
cmp ax, dx
ja 0x428305
mov ecx, dword [ebx + 0x10]
nop
movzx eax, ax
test byte [eax + ecx], 1
je 0x428305
movzx eax, word [esi + 2]
add esi, 2
cmp ax, dx
jbe 0x4282f0
cmp word [esi], 0x23
jne 0x4283a1
movzx edi, word [esi + 2]
add esi, 2
test di, di
je 0x4282e0
nop dword [eax + eax]
mov edx, dword [ebx + 0x58]
mov ecx, dword [ebx + 0x20]
test edx, edx
je 0x42834f
cmp esi, ecx
jae 0x428370
push dword [ebp - 0x94]
lea eax, [ebx + 0x5c]
push eax
push ecx
push edx
push esi
call fcn.0043a430
add esp, 0x14
test eax, eax
je 0x428370
mov eax, dword [ebx + 0x5c]
lea esi, [esi + eax*2]
jmp 0x4282d4
mov edx, dword [ebx + 0x5c]
lea eax, [edx + edx]
sub ecx, eax
cmp esi, ecx
ja 0x428370
cmp di, word [ebx + 0x60]
jne 0x428370
cmp edx, 1
je 0x428347
mov ax, word [esi + 2]
cmp ax, word [ebx + 0x62]
je 0x428347
add esi, 2
cmp dword [ebp - 0x94], 0
je 0x428394
mov ax, word [esi]
mov ecx, 0xfc00
and ax, cx
mov ecx, 0xdc00
cmp ax, cx
jne 0x428394
add esi, 2
movzx edi, word [esi]
test di, di
jne 0x428320
jmp 0x4282d4
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 0x4283d0
xor ebx, ebx
mov dword [ebp - 0x9c], 1
add esi, 2
mov dword [ebp - 0x64], esi
jmp 0x4283e9
cmp ecx, 0x3f
jne 0x4283e3
mov ebx, dword [ebp - 0x124]
add esi, 2
mov dword [ebp - 0x64], esi
jmp 0x4283e9
mov ebx, dword [ebp - 0x118]
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0x78], ebx
cmp word [eax], 0x75
jne 0x428461
push 4
push eax
add eax, 4
push eax
call fcn.0043e460
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 0x428458
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 0x428458
sub eax, dword [esi + 0x18]
movzx edx, word [ecx - 2]
add eax, 2
sar eax, 1
cmp edx, eax
jne 0x428455
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 0x428c78
cmp ecx, 0x1e
je 0x428c78
cmp ecx, 0x1f
je 0x428c78
cmp ecx, 0x20
je 0x428c78
cmp ecx, 0x17
jae 0x4284b2
mov edi, ecx
mov ebx, 0x34
cmp edi, 0x10
je 0x4284a2
cmp edi, 0xf
jne 0x428d22
movzx edx, word [eax + 2]
movzx eax, word [eax + 4]
mov dword [ebp - 0x7c], eax
jmp 0x428d2c
cmp ecx, 0x6e
je 0x428bdc
cmp ecx, 0x6f
je 0x428bdc
cmp ecx, 0x70
je 0x428bdc
cmp ecx, 0x71
je 0x428bdc
cmp ecx, 0x72
je 0x428bdc
cmp ecx, 0x73
je 0x428bdc
cmp ecx, 0x74
je 0x428bdc
cmp ecx, 0x7e
jb 0x428bad
mov edx, 0x88
cmp cx, dx
ja 0x428bad
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 0x42855c
mov eax, dword [ebp - 0x80]
mov ebx, 0x92
cmp word [eax + 4], bx
mov ebx, dword [ebp - 0x78]
jne 0x42855c
mov ebx, dword [ebp - 0x80]
movzx eax, word [eax + 2]
cmp word [ebx + eax*2], 0x78
mov ebx, dword [ebp - 0x78]
jne 0x428bbb
mov eax, 0x82
cmp cx, ax
mov ecx, dword [ebp - 0xb4]
jae 0x428590
test ecx, ecx
jg 0x428bbb
mov eax, dword [ebp - 0xac]
test eax, eax
js 0x428583
cmp eax, 1
jle 0x428596
mov eax, 1
mov dword [ebp - 0xac], eax
jmp 0x428596
mov eax, dword [ebp - 0xac]
test ecx, ecx
jne 0x42867e
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 0x428624
push 1
push dword [ebp - 0x80]
call fcn.00426370
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.0043e460
mov edx, dword [ebp - 0x68]
add esp, 0x20
add edx, 2
cmp dword [ebp - 0xac], 0
mov dword [ebp - 0x68], edx
jne 0x428600
mov eax, dword [ebp - 0x80]
mov ecx, 0xa3
mov word [eax], cx
mov esi, dword [ebp - 0x64]
jmp 0x428bbe
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 0x428823
mov esi, dword [ebp - 0x80]
push 3
push esi
call fcn.00426370
mov eax, dword [ebp - 0x84]
add eax, eax
push eax
lea eax, [esi + 6]
push esi
push eax
call fcn.0043e460
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 0x428823
cmp ecx, 1
jle 0x428814
mov ebx, dword [ebp - 0xa4]
test ebx, ebx
je 0x4286e8
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.0044f6a0
test edx, edx
jg 0x42aaea
jl 0x4286c4
cmp eax, 0x7fffffff
ja 0x42aaea
mov ecx, dword [ebx]
mov eax, 0x7fffffeb
sub eax, ecx
cmp eax, edi
jb 0x42aaea
lea eax, [edi + ecx]
mov edi, dword [ebp - 0x7c]
mov ecx, dword [ebp - 0xb4]
mov dword [ebx], eax
jmp 0x428814
cmp dword [ebp - 0x104], 0
je 0x428712
cmp dword [ebp - 0xbc], 0
jge 0x428712
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 0x428814
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.0043e9e0
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 0x4287a0
nop dword [eax + eax]
push edx
call fcn.0042b930
mov ecx, dword [ebp - 0x70]
add esp, 4
mov dword [ecx], eax
test eax, eax
jne 0x42ab0f
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 0x428770
mov eax, dword [edx + 0x14]
lea edx, [eax + esi*2]
lea esi, [edi + edi]
add eax, esi
cmp edx, eax
jae 0x4287e8
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 0x4287c0
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 0x428730
mov esi, dword [ebp - 0x64]
mov eax, dword [ebp - 0xac]
mov ebx, dword [ebp - 0x78]
test eax, eax
jle 0x42882b
sub eax, ecx
mov dword [ebp - 0xac], eax
test eax, eax
js 0x428a5a
mov edx, dword [ebp - 0xa4]
test edx, edx
je 0x428891
test eax, eax
jle 0x428891
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.0044f6a0
test edx, edx
jg 0x42aaea
jl 0x428870
cmp eax, 0x7fffffff
ja 0x42aaea
mov edx, dword [ebp - 0xa4]
mov eax, 0x7fffffeb
mov ecx, dword [edx]
sub eax, ecx
cmp eax, edi
jb 0x42aaea
lea eax, [edi + ecx]
mov dword [edx], eax
jmp 0x4289d8
add eax, 0xffffffff
mov dword [ebp - 0x78], eax
js 0x4289d8
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 0x42890c
mov eax, 0x84
mov word [edx], ax
add edx, 2
mov dword [ebp - 0x68], edx
mov edx, dword [ebp - 0x90]
test edx, edx
jne 0x4288f3
xor eax, eax
jmp 0x4288fa
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.0043e9e0
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 0x42895d
push esi
call fcn.0042b930
mov ecx, dword [ebp - 0x70]
add esp, 4
mov dword [ecx], eax
test eax, eax
jne 0x42ab0f
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 0x428930
mov eax, dword [esi + 0x14]
lea edx, [eax + edi*2]
lea edi, [ebx + ebx]
add eax, edi
cmp edx, eax
jae 0x4289b2
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 0x428984
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 0x4288b4
mov esi, dword [ebp - 0x64]
mov ebx, dword [ebp - 0x90]
test ebx, ebx
je 0x428a21
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 0x4289ff
xor ebx, ebx
jmp 0x428a04
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 0x4289e5
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 0x428bbe
mov eax, dword [ebp - 0xb0]
movzx ecx, word [eax]
lea eax, [ecx - 0x1d]
cmp eax, 0x53
ja case.0x428a53.33
movzx eax, byte [eax + 0x42aebc]
jmp dword [eax*4 + 0x42aea8]
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 0x428a7f
cmp ax, si
jne 0x428a92
cmp dword [ebp - 0x9c], 0
je 0x428a92
mov eax, 0x84
mov word [ebx], ax
jmp 0x428aa4
cmp ax, cx
je 0x428b9c
cmp ax, si
je 0x428b9c
cmp dword [ebp - 0xa4], 0
jne 0x428ae0
mov esi, ebx
nop
push 0
push dword [ebp - 0x6c]
push dword [ebp - 0x94]
push edi
push esi
call fcn.0042b490
add esp, 0x14
test eax, eax
jne 0x428ad9
movzx eax, word [esi + 2]
cmp word [esi + eax*2], 0x78
lea esi, [esi + eax*2]
je 0x428ab0
jmp 0x428add
add word [ebx], 5
mov edx, dword [ebp - 0x68]
cmp dword [ebp - 0x9c], 0
je 0x428b8e
movzx eax, word [ebx]
mov ecx, 0x88
cmp ax, cx
je 0x428b12
mov ecx, 0x8d
cmp ax, cx
je 0x428b12
inc eax
mov word [ebx], ax
mov eax, 0x7c
mov word [edi], ax
jmp 0x428b6a
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.00426370
lea eax, [esi + esi]
push eax
lea eax, [ebx + 4]
push ebx
push eax
call fcn.0043e460
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 0x428b7c
mov ecx, 0x96
mov word [eax], cx
cmp dword [ebp - 0xb4], 2
mov esi, dword [ebp - 0x64]
jge 0x428a24
jmp 0x428bbe
mov eax, dword [ebp - 0x78]
add eax, 0x7a
mov word [edi], ax
mov esi, dword [ebp - 0x64]
jmp 0x428bbe
mov eax, dword [ebp - 0x78]
add eax, 0x7a
mov word [edi], ax
mov esi, dword [ebp - 0x64]
jmp 0x428a24
mov eax, 0x9f
cmp cx, ax
jne 0x42ab85
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 0x426ec0
test edx, edx
jne 0x428be7
mov edx, eax
mov dword [ebp - 0x68], edx
jmp 0x428bbe
test edi, edi
jne 0x428c23
cmp edx, 0xffffffff
jne 0x428c07
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 0x428a24
cmp edx, 1
jne 0x428c44
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 0x428a24
cmp edi, 1
jne 0x428c44
cmp edx, 0xffffffff
jne 0x428c44
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 0x428a24
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 0x428a24
mov eax, ecx
sub eax, 0x1e
je 0x428c9b
sub eax, 1
je 0x428c94
sub eax, 1
je 0x428c8d
xor ebx, ebx
jmp 0x428ca0
mov ebx, 0x27
jmp 0x428ca0
mov ebx, 0x1a
jmp 0x428ca0
mov ebx, 0xd
cmp dword [ebp - 0x94], 0
mov edi, dword [ebp - 0x68]
je 0x428cf8
mov ax, word [edi - 2]
lea edx, [edi - 2]
and ax, word [ebp - 0x128]
cmp ax, word [ebp - 0x12c]
jne 0x428cf8
mov ax, word [edx]
mov ecx, 0xfc00
and ax, cx
mov ecx, 0xdc00
cmp ax, cx
jne 0x428cdb
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.0043e9e0
add esp, 0xc
or edi, 0x10000000
jmp 0x428d22
movzx edi, word [edi - 2]
cmp ecx, 0x1e
ja 0x428d22
cmp dword [ebp - 0xb4], 1
jle 0x428d22
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 0x428bbb
mov eax, dword [ebp - 0x78]
add eax, ebx
cmp dword [ebp - 0xb4], 0
mov dword [ebp - 0x78], eax
jne 0x428dd1
mov ecx, dword [ebp - 0xac]
cmp ecx, 0xffffffff
jne 0x428db3
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 0x428edd
test edi, 0x10000000
je 0x428edd
and edi, 7
lea eax, [ebp - 0x60]
add edi, edi
push edi
push eax
push esi
call fcn.0043e9e0
mov edx, dword [ebp - 0x68]
add esp, 0xc
mov esi, dword [ebp - 0x64]
add edx, edi
mov dword [ebp - 0x68], edx
jmp 0x428a2a
cmp ecx, 1
jne 0x428dbd
add eax, 0x25
jmp 0x428d67
mov ebx, dword [ebp - 0x80]
add eax, 0x27
lea esi, [ebx + 2]
mov word [ebx], ax
mov word [esi], cx
add esi, 2
jmp 0x428d70
cmp dword [ebp - 0xb4], 1
jne 0x428e10
mov ebx, dword [ebp - 0xac]
cmp ebx, 0xffffffff
jne 0x428ded
add eax, 0x23
jmp 0x428d67
mov dword [ebp - 0x68], ecx
cmp ebx, 1
je 0x428bbb
add eax, 0x27
lea esi, [ecx + 2]
mov word [ecx], ax
lea eax, [ebx - 1]
mov word [esi], ax
add esi, 2
jmp 0x428d70
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 0x428d73
cmp dword [ebp - 0x94], 0
je 0x428e8e
test edi, 0x10000000
je 0x428e8e
mov esi, edi
lea eax, [ebp - 0x60]
and esi, 7
add esi, esi
push esi
push eax
push dword [ebp - 0x68]
call fcn.0043e9e0
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 0x428ea7
mov eax, dword [ebp - 0x78]
add eax, 0x21
mov word [esi], ax
add esi, 2
mov dword [ebp - 0x68], esi
jmp 0x428d76
mov word [esi], di
add esi, 2
test edx, edx
js 0x428e73
mov ecx, dword [ebp - 0x7c]
mov word [esi], dx
mov word [esi + 2], cx
add esi, 4
jmp 0x428e76
sub ebx, eax
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0xac], ebx
cmp ebx, 1
jne 0x428ec8
add eax, 0x25
mov word [esi], ax
add esi, 2
mov dword [ebp - 0x68], esi
jmp 0x428d76
add eax, 0x27
mov word [esi], ax
mov word [esi + 2], bx
add esi, 4
mov dword [ebp - 0x68], esi
jmp 0x428d76
mov word [esi], di
add esi, 2
mov dword [ebp - 0x68], esi
test edx, edx
js 0x428f01
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 0x428a2a
mov esi, dword [ebp - 0x64]
mov edx, dword [ebp - 0x68]
jmp 0x428a2a
mov eax, dword [ebp - 0xb0]
movzx eax, word [eax + 4]
cmp eax, 0x10
je 0x428f2d
cmp eax, 0xf
je 0x428f2d
movzx ecx, byte [ecx + 0x455168]
xor eax, eax
add ecx, eax
jmp 0x428f89
movzx ecx, byte [ecx + 0x455168]
mov eax, 2
add ecx, eax
jmp 0x428f89
movzx eax, byte [ecx + 0x455168]
mov ecx, dword [ebp - 0xb0]
lea ecx, [ecx + eax*2]
mov dword [ebp - 0xb0], ecx
test ebx, ebx
je case.0x428a53.33
mov ax, word [ecx - 2]
mov ecx, 0xfc00
and ax, cx
mov ecx, 0xd800
cmp ax, cx
jne case.0x428a53.33
add dword [ebp - 0xb0], 2
jmp case.0x428a53.33
add dword [ebp - 0xb0], 0x22
jmp case.0x428a53.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 0x428bbe
movzx eax, word [ecx]
cmp eax, 0x76
jae 0x428fcc
mov al, byte [eax + 0x454d00]
test al, al
je 0x428fcc
movzx eax, al
mov word [ecx], ax
mov esi, dword [ebp - 0x64]
jmp 0x428bbe
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.00426370
lea eax, [edi + edi]
push eax
mov eax, dword [ebp - 0xb0]
push eax
add eax, 4
push eax
call fcn.0043e460
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 0x428bc1
add esi, 2
mov dword [ebp - 0x64], esi
movzx edx, word [esi]
cmp edx, 0x3f
jne 0x42908f
cmp word [esi + 2], 0x23
jne 0x42908f
mov ebx, dword [ebp - 0x6c]
add esi, 4
mov dword [ebp - 0x64], esi
mov eax, dword [ebx + 0x20]
cmp esi, eax
jae 0x429077
cmp word [esi], 0x29
je 0x427538
add esi, 2
mov dword [ebp - 0x64], esi
cmp esi, eax
jb 0x429063
cmp word [esi], 0x29
je 0x427538
mov eax, dword [ebp - 0x70]
mov dword [eax], 0x76
jmp 0x42ad86
cmp edx, 0x2a
jne 0x4290bd
lea eax, [esi + 2]
mov dword [ebp - 0x9c], eax
movzx eax, word [eax]
cmp eax, 0x3a
je 0x429105
mov ecx, 0xff
cmp ax, cx
ja 0x4290bd
mov ebx, dword [ebp - 0x6c]
mov ecx, eax
mov eax, dword [ebx + 0x10]
test byte [ecx + eax], 2
jne 0x429108
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 0x429d0f
add esi, 2
mov dword [ebp - 0x64], esi
movzx edx, word [esi]
lea eax, [edx - 0x21]
cmp eax, 0x5b
ja case.0x4290fe.34
movzx eax, byte [eax + 0x42af48]
jmp dword [eax*4 + 0x42af10]
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, 0x454868
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 0x429160
mov ecx, dword [ebx + 0x10]
movzx eax, ax
test byte [eax + ecx], 2
je 0x42915a
add esi, 2
mov dword [ebp - 0x64], esi
movzx eax, word [esi]
cmp ax, di
jbe 0x429143
mov ecx, dword [ebp - 0x90]
mov ebx, esi
sub ebx, edx
sar ebx, 1
cmp word [esi], 0x3a
jne 0x4291b4
add esi, 2
mov dword [ebp - 0x64], esi
mov edi, esi
mov dword [ebp - 0xa8], edi
movzx eax, word [esi]
test ax, ax
je 0x429196
cmp ax, 0x29
je 0x429196
add esi, 2
mov dword [ebp - 0x64], esi
movzx eax, word [esi]
test ax, ax
jne 0x429182
mov edx, esi
sub edx, edi
sar edx, 1
mov dword [ebp - 0x84], edx
cmp edx, 0xffff
ja 0x42ab9e
mov edx, dword [ebp - 0x9c]
cmp word [esi], 0x29
jne 0x42abdf
xor edi, edi
mov esi, 0x454898
cmp ebx, dword [esi]
jne 0x4291de
push ebx
push ecx
push edx
call fcn.0043a6f0
add esp, 0xc
test eax, eax
je 0x4291ff
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 0x42abce
mov edx, dword [ebp - 0x9c]
jmp 0x4291c5
lea eax, [edi + edi*2]
mov ecx, dword [eax*4 + 0x45489c]
cmp ecx, 0xa0
jne 0x429287
cmp dword [ebp - 0x84], 0
jne 0x42abac
mov ebx, dword [ebp - 0x6c]
mov edx, dword [ebp - 0x68]
mov ecx, dword [ebx + 0x34]
mov dword [ebx + 0x78], 1
test ecx, ecx
je 0x429257
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 0x429240
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 0x4292f1
mov dword [ebp - 0x8c], 0xffffffff
jmp 0x4292f1
mov edx, dword [ebp - 0x84]
test edx, edx
jne 0x4292a3
test ecx, ecx
js 0x42abbd
mov edx, dword [ebp - 0x68]
movzx eax, cx
mov edi, eax
jmp 0x4292e5
cmp dword [eax*4 + 0x4548a0], 0
jl 0x42abac
mov ecx, dword [ebp - 0x68]
lea esi, [edx + edx]
movzx eax, word [eax*4 + 0x4548a0]
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.0043e9e0
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.0x429300
jmp dword [edi*4 + 0x42afa4]
mov esi, dword [ebp - 0x64]
or dword [ebx + 0x44], 0x1000
add esi, 2
mov dword [ebp - 0x64], esi
jmp 0x426ec0
mov dword [ebx + 0x7c], 1
mov esi, dword [ebp - 0x64]
add esi, 2
mov dword [ebp - 0x64], esi
jmp 0x426ec0
mov dword [ebp - 0xe0], 1
add esi, 2
mov ebx, 0x84
mov dword [ebp - 0x64], esi
jmp 0x42990c
mov ebx, esi
mov dword [ebp - 0x84], 0x88
mov dword [ebp - 0xd4], ebx
cmp word [esi + 2], 0x3f
jne 0x42941d
cmp word [esi + 4], 0x43
jne 0x42941d
movzx edx, word [esi + 6]
cmp edx, 0x30
jb 0x429381
cmp edx, 0x39
jbe 0x429386
cmp edx, 0x29
jne 0x4293b8
mov ecx, 3
cmp edx, 0x30
jb 0x4293a3
mov eax, edx
cmp ax, 0x39
ja 0x4293a3
movzx eax, word [esi + ecx*2 + 2]
inc ecx
cmp eax, 0x30
jae 0x429392
cmp word [esi + ecx*2], 0x29
jne 0x429413
lea ebx, [ecx + 1]
lea ebx, [esi + ebx*2]
mov dword [ebp - 0xd4], ebx
jmp 0x429413
mov eax, dword [0x455234]
xor ecx, ecx
test eax, eax
je 0x429413
cmp edx, eax
je 0x4293d5
mov eax, dword [ecx*4 + 0x455238]
inc ecx
test eax, eax
jne 0x4293c3
jmp 0x429413
mov edi, dword [ecx*4 + 0x455210]
test edi, edi
je 0x429413
mov eax, dword [ebp - 0x6c]
lea ecx, [esi + 8]
mov edx, 4
mov ebx, dword [eax + 0x20]
cmp ecx, ebx
jae 0x42940d
movzx eax, word [ecx]
cmp eax, edi
jne 0x429405
movzx eax, word [ecx + 2]
cmp eax, edi
jne 0x42945d
inc edx
add ecx, 2
add ecx, 2
inc edx
cmp ecx, ebx
jb 0x4293f2
mov ebx, dword [ebp - 0xd4]
cmp word [ebx], 0x28
jne 0x42abed
cmp word [ebx + 2], 0x3f
jne 0x429473
movzx eax, word [ebx + 4]
cmp eax, 0x3d
je 0x429445
cmp eax, 0x21
je 0x429445
cmp eax, 0x3c
jne 0x429473
movzx eax, word [ebx + 6]
cmp eax, 0x3d
je 0x429445
cmp eax, 0x21
jne 0x429473
mov ecx, dword [ebp - 0x6c]
mov ebx, dword [ebp - 0x84]
mov dword [ecx + 0x88], 1
jmp 0x42990f
cmp word [esi + edx*2 + 2], 0x29
jne 0x42940d
lea ebx, [edx + 2]
lea ebx, [esi + ebx*2]
mov dword [ebp - 0xd4], ebx
jmp 0x429413
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.0043a6f0
mov esi, dword [ebp - 0x64]
add esp, 0xc
test eax, eax
jne 0x4295b8
cmp word [esi + 0xe], 0x29
je 0x4295b8
add esi, 0xe
xor ebx, ebx
xor edx, edx
mov dword [ebp - 0x64], esi
cmp word [esi], 0x3e
jne 0x4294e0
add esi, 2
lea ebx, [edi + 1]
mov dword [ebp - 0x64], esi
cmp word [esi], 0x3d
jne 0x42abfb
add esi, 2
mov dword [ebp - 0x64], esi
movzx eax, word [esi]
cmp eax, 0x30
jb 0x42abfb
cmp eax, 0x39
ja 0x42abfb
cmp ax, 0x39
ja 0x429525
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 0x429505
cmp word [esi], 0x2e
jne 0x429560
add esi, 2
mov dword [ebp - 0x64], esi
movzx eax, word [esi]
cmp eax, 0x30
jb 0x429560
nop dword [eax]
cmp ax, 0x39
ja 0x429560
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 0x429540
cmp word [esi], 0x29
jne 0x42abfb
test ebx, ebx
je 0x429581
cmp edx, 0xa
jl 0x42957a
jne 0x429590
cmp edi, 0x14
jg 0x429590
mov eax, 0x93
jmp 0x429595
cmp edx, 0xa
jne 0x429590
mov eax, 0x93
cmp edi, 0x14
je 0x429595
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 0x429912
movzx eax, word [esi]
cmp eax, 0x52
jne 0x4295e1
cmp word [esi + 2], 0x26
jne 0x4295e1
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 0x4295f5
cmp eax, 0x3c
jne 0x4296ef
mov edx, 0x3e
add esi, 2
mov dword [ebp - 0x64], esi
mov dword [ebp - 0x90], edx
movzx eax, word [esi]
cmp eax, 0x30
jb 0x42960c
cmp eax, 0x39
jbe 0x42ac09
mov ecx, 0xff
cmp ax, cx
ja 0x42abed
movzx ecx, ax
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax + 0x10]
test byte [ecx + eax], 0x10
je 0x42abed
mov dword [ebp - 0x9c], esi
mov ecx, 0xff
add esi, 2
mov dword [ebp - 0x64], esi
movzx eax, word [esi]
cmp ax, cx
ja 0x42966b
mov ecx, dword [ebp - 0x6c]
mov ecx, dword [ecx + 0x10]
nop dword [eax]
movzx eax, ax
test byte [eax + ecx], 0x10
je 0x42966b
add esi, 2
mov dword [ebp - 0x64], esi
movzx eax, word [esi]
cmp ax, word [ebp - 0x130]
jbe 0x429650
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 0x4296a1
mov ax, word [esi]
add esi, 2
mov dword [ebp - 0x64], esi
cmp ax, dx
jne 0x42ac36
mov ax, word [esi]
add esi, 2
mov dword [ebp - 0x64], esi
cmp ax, 0x29
jne 0x42ac36
cmp dword [ebp - 0xa4], 0
jne 0x429906
test ebx, ebx
js 0x4297a1
test edi, edi
jle 0x42ac17
mov ecx, dword [ebp - 0x6c]
test ebx, ebx
je 0x42976c
cmp ebx, 0x2d
jne 0x429769
mov eax, dword [ecx + 0x48]
sub eax, edi
lea edi, [eax + 1]
jmp 0x42976c
cmp eax, 0x27
jne 0x4296fb
mov edx, eax
jmp 0x4295ef
xor edx, edx
mov dword [ebp - 0x90], edx
cmp eax, 0x2d
je 0x429723
cmp eax, 0x2b
je 0x429723
cmp eax, 0x30
jb 0x42960c
cmp eax, 0x39
ja 0x4295fb
xor ebx, ebx
jmp 0x429733
mov ebx, eax
add esi, 2
mov dword [ebp - 0x64], esi
test ebx, ebx
js 0x4295fb
movzx eax, word [esi]
cmp eax, 0x30
jb 0x4296a1
nop
cmp ax, 0x39
ja 0x4296a1
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 0x429740
jmp 0x4296a1
add edi, dword [ecx + 0x48]
test edi, edi
jle 0x42ac28
cmp edi, dword [ecx + 0x4c]
ja 0x42ac28
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 0x429912
mov dword [ecx + 0x50], edi
jmp 0x429912
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 0x4297ea
push ecx
lea eax, [edi + 2]
push eax
push dword [ebp - 0x9c]
call fcn.0043a6b0
add esp, 0xc
test eax, eax
je 0x4297e1
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 0x4297b4
mov esi, dword [ebp - 0x64]
mov edx, dword [ebp - 0x90]
mov ecx, dword [ebp - 0x6c]
movzx eax, word [ecx + 0x30]
cmp ebx, eax
jge 0x429897
mov dword [ebp - 0xec], ebx
xor eax, eax
movzx esi, word [edi]
cmp esi, dword [ecx + 0x50]
jbe 0x42980c
mov dword [ecx + 0x50], esi
inc eax
inc ebx
mov dword [ebp - 0xa8], eax
movzx eax, word [ecx + 0x30]
cmp ebx, eax
jge 0x429850
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.0043a6b0
mov ecx, dword [ebp - 0x6c]
add esp, 0xc
test eax, eax
jne 0x429850
mov eax, dword [ebp - 0x7c]
cmp word [edi + eax*2 + 2], 0
mov eax, dword [ebp - 0xa8]
je 0x429801
mov eax, dword [ebp - 0xa8]
mov edx, dword [ebp - 0x78]
cmp eax, 1
jle 0x429885
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 0x429912
mov eax, dword [ebp - 0x68]
mov ebx, dword [ebp - 0x84]
mov word [eax + 6], si
mov esi, dword [ebp - 0x64]
jmp 0x429912
test edx, edx
jne 0x42ac28
mov eax, dword [ebp - 0x9c]
cmp word [eax], 0x52
jne 0x429958
mov ebx, dword [ebp - 0x7c]
xor ecx, ecx
lea edx, [ecx + 1]
cmp ebx, edx
jle 0x4298ee
nop dword [eax + eax]
movzx eax, word [eax + edx*2]
cmp eax, 0x30
jb 0x42ac28
cmp eax, 0x39
ja 0x42ac28
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 0x4298c0
test ecx, ecx
jne 0x4298f3
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 0x42acd0
lea eax, [ebx - 0x7e]
cmp eax, 3
ja 0x42a0a5
cmp dword [edi + 0x88], 0
je 0x42a0a5
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x80], 0
mov dword [edi + 0x88], 0
jmp 0x42a0b9
cmp dword [ebp - 0x7c], 6
jne 0x42ac28
push 6
push str.DEFINE
push eax
call fcn.0043a6f0
add esp, 0xc
test eax, eax
jne 0x42ac25
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 0x429912
mov ecx, dword [ebp - 0x6c]
mov ebx, 0x7e
inc dword [ecx + 0x70]
add esi, 2
mov dword [ebp - 0x64], esi
jmp 0x42990f
add esi, 2
mov dword [ebp - 0x64], esi
cmp word [esi], 0x29
jne 0x429a0f
movzx eax, word [esi + 2]
cmp eax, 0x2a
je 0x429a0f
cmp eax, 0x2b
je 0x429a0f
cmp eax, 0x3f
je 0x429a0f
cmp eax, 0x7b
jne 0x4299e6
lea eax, [esi + 4]
push eax
call fcn.0042c360
add esp, 4
test eax, eax
jne 0x429a0f
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 0x426ec0
mov ecx, dword [ebp - 0x6c]
mov ebx, 0x7f
inc dword [ecx + 0x70]
jmp 0x42990f
movzx eax, word [esi + 2]
cmp eax, 0x21
je 0x429a76
cmp eax, 0x3d
je 0x429a60
nop dword [eax]
add esi, 2
mov dword [ebp - 0x64], esi
cmp word [esi], 0x3e
jne 0x429a30
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 0x429912
mov ecx, dword [ebp - 0x6c]
mov ebx, 0x80
inc dword [ecx + 0x70]
add esi, 4
mov dword [ebp - 0x64], esi
jmp 0x42990f
mov ecx, dword [ebp - 0x6c]
mov ebx, 0x81
inc dword [ecx + 0x70]
add esi, 4
mov dword [ebp - 0x64], esi
jmp 0x42990f
add esi, 2
mov ebx, 0x82
mov dword [ebp - 0x64], esi
jmp 0x42990c
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 0x429bf7
cmp edi, 0x30
jb 0x429acf
cmp edi, 0x39
jbe 0x429bf7
mov eax, dword [0x455234]
xor edx, edx
test eax, eax
je 0x429af0
mov ecx, edi
nop dword [eax]
cmp ecx, eax
je 0x429afe
mov eax, dword [edx*4 + 0x455238]
inc edx
test eax, eax
jne 0x429ae0
mov eax, dword [ebp - 0x70]
mov dword [eax], 0xb6
jmp 0x42ad86
mov edx, dword [edx*4 + 0x455210]
test edx, edx
je 0x429af0
cmp dword [ebp - 0xa4], 0
mov ebx, dword [ebp - 0x6c]
je 0x429b69
mov ecx, dword [ebx + 0x20]
mov edi, esi
nop word [eax + eax]
add esi, 2
mov dword [ebp - 0x64], esi
cmp esi, ecx
jae 0x42ac47
movzx eax, word [esi]
cmp eax, edx
jne 0x429b43
movzx eax, word [esi + 2]
cmp eax, edx
jne 0x429b43
add esi, 4
mov dword [ebp - 0x64], esi
movzx eax, word [esi]
cmp eax, edx
jne 0x429b20
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 0x429c63
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 0x429ba5
movzx eax, word [ecx + 2]
add ecx, 2
cmp eax, edx
jne 0x429bb9
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 0x429b90
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 0x429c63
mov eax, 0x76
xor ecx, ecx
mov word [edx], ax
mov esi, dword [ebp - 0x64]
movzx eax, word [esi]
cmp eax, 0x30
jb 0x429c3c
nop dword [eax]
cmp ax, 0x39
ja 0x429c3c
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 0x42ac57
movzx eax, word [esi]
cmp eax, 0x30
jae 0x429c10
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 [0x4551de]
mov esi, dword [ebp - 0x64]
lea edx, [edx + eax*2]
mov dword [ebp - 0x68], edx
cmp word [esi], 0x29
jne 0x42ac65
add esi, 2
mov dword [ebp - 0x80], 0
mov dword [ebp - 0x64], esi
jmp 0x426ec0
add esi, 2
mov dword [ebp - 0x64], esi
movzx edx, word [esi]
cmp edx, 0x3d
je 0x429cc2
cmp edx, 0x3e
je 0x429cc2
cmp edx, 0x3c
jne 0x42ac73
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 0x429cb0
jmp 0x429a3c
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 0x42a440
mov ebx, dword [ebp - 0x6c]
mov edi, 0x29
mov edx, dword [ebp - 0x70]
mov dword [ebp - 0x90], 1
jmp 0x42a440
add esi, 2
mov dword [ebp - 0x64], esi
mov dword [ebp - 0xc0], 0x29
jmp 0x429ec6
test ecx, 0x2000
je 0x429a42
mov ecx, dword [ebp - 0x6c]
mov ebx, 0x84
mov edx, eax
jmp 0x429912
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.00426510
mov edx, dword [ebp - 0x70]
add esp, 0x18
mov edi, eax
cmp dword [edx], 0
jne 0x42ab0f
test edi, edi
jne 0x429d9b
cmp dword [ebp - 0x94], eax
mov eax, dword [ebp - 0x110]
je 0x429d8d
cmp eax, 0xffff
jbe 0x429d8d
lea ecx, [ebp - 0x34]
push ecx
push eax
call fcn.0043a5b0
add esp, 8
mov edx, eax
jmp 0x427070
mov word [ebp - 0x34], ax
mov edx, 1
jmp 0x427070
cmp edi, 0x1a
jne 0x429dda
mov esi, dword [ebp - 0x64]
cmp word [esi + 2], 0x5c
jne 0x429dc2
cmp word [esi + 4], 0x45
jne 0x429dc2
mov edx, dword [ebp - 0x68]
add esi, 4
add esi, 2
mov dword [ebp - 0x64], esi
jmp 0x426ec0
mov edx, dword [ebp - 0x68]
add esi, 2
mov dword [ebp - 0xb8], 1
mov dword [ebp - 0x64], esi
jmp 0x426ec0
cmp edi, 0x19
je case.default.0x429300
mov ecx, dword [ebp - 0x8c]
cmp ecx, 0xfffffffe
jne 0x429e02
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 0x42a3e0
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 0x429e87
cmp eax, 0x2d
je 0x429e87
cmp eax, 0x30
jb 0x429e78
cmp eax, 0x39
jbe 0x429e87
mov dword [ebp - 0x90], 1
jmp 0x42a440
movzx eax, word [esi + 4]
lea ecx, [esi + 4]
cmp eax, 0x30
jb 0x429ea5
cmp ax, 0x39
ja 0x429ea5
movzx eax, word [ecx + 2]
add ecx, 2
cmp eax, 0x30
jae 0x429e93
cmp word [ecx], di
je 0x429ec0
mov eax, edx
add esi, 2
mov edx, dword [ebp - 0x68]
mov dword [ebp - 0x64], esi
mov dword [eax], 0x9d
jmp 0x426ec0
add esi, 2
mov dword [ebp - 0x64], esi
movzx edx, word [esi]
mov ebx, edx
cmp ebx, 0x2b
jne 0x429f64
add esi, 2
mov dword [ebp - 0x64], esi
movzx eax, word [esi]
cmp eax, 0x30
jb 0x42ac81
cmp eax, 0x39
ja 0x42ac81
movzx eax, word [esi]
xor edi, edi
cmp eax, 0x30
jb 0x429f2c
nop dword [eax]
cmp ax, 0x39
ja 0x429f2c
cmp edi, 0xccccccb
jg 0x42acde
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 0x429f00
mov eax, dword [ebp - 0xc0]
cmp word [esi], ax
jne 0x42ad13
cmp ebx, 0x2d
jne 0x42a3c4
test edi, edi
je 0x42ad08
mov ebx, dword [ebp - 0x6c]
mov eax, dword [ebx + 0x48]
sub eax, edi
lea edi, [eax + 1]
test edi, edi
jle 0x42ac28
jmp 0x42a669
cmp ebx, 0x2d
jne 0x429eef
movzx eax, word [esi + 2]
cmp eax, 0x30
jb case.0x4290fe.34
cmp eax, 0x39
ja case.0x4290fe.34
add esi, 2
mov dword [ebp - 0x64], esi
jmp 0x429eef
xor eax, eax
lea ecx, [ebp - 0xa8]
xor ebx, ebx
mov dword [ebp - 0x90], eax
mov dword [ebp - 0xa8], ebx
cmp dx, 0x29
je 0x42a014
nop
cmp dx, 0x3a
je 0x42a008
movzx eax, dx
add esi, 2
sub eax, 0x2d
mov dword [ebp - 0x64], esi
cmp eax, 0x4b
ja case.0x429fc2.46
movzx eax, byte [eax + 0x42afdc]
jmp dword [eax*4 + 0x42afbc]
lea ecx, [ebp - 0x90]
jmp 0x42a000
mov eax, dword [ebp - 0x6c]
or dword [ecx], 0x40
or dword [eax + 0x44], 0x400
jmp 0x42a000
or dword [ecx], 8
jmp 0x42a000
or dword [ecx], 0x400
jmp 0x42a000
or dword [ecx], 0x20
jmp 0x42a000
or dword [ecx], 0x80
jmp 0x42a000
or dword [ecx], 0x40000
movzx edx, word [esi]
cmp edx, 0x29
jne 0x429fa0
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 0x42a095
mov eax, dword [ecx + 0x18]
mov edx, dword [ebp - 0x68]
add eax, 4
cmp edx, eax
jne 0x42a04e
mov eax, dword [ebp - 0xa4]
test eax, eax
je 0x42a049
cmp dword [eax], 4
jne 0x42a04e
mov dword [ecx + 0x40], ebx
jmp 0x42a073
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 0x426ec0
add esi, 2
mov ebx, 0x84
mov dword [ebp - 0x64], esi
jmp 0x42990f
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 0x42a0ef
cmp ebx, 0x81
je 0x42a0ef
xor ecx, ecx
jmp 0x42a0f4
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.0042b030
add esp, 0x3c
test eax, eax
je 0x42ab0f
mov eax, dword [ebp - 0x6c]
dec dword [eax + 0x6c]
cmp ebx, 0x82
jne 0x42a20c
cmp dword [eax + 0x48], esi
ja 0x42a195
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 0x42acc2
mov edx, dword [ebp - 0xa4]
test edx, edx
je 0x42a29c
mov edi, dword [ebp - 0xf4]
mov ecx, 0x7fffffeb
mov edx, dword [edx]
sub ecx, edx
lea eax, [edi - 4]
cmp ecx, eax
jb 0x42aaea
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 0x426ec0
cmp ebx, 0x7e
jl 0x42a21c
cmp ebx, 0x81
jg 0x42a21c
dec dword [eax + 0x70]
cmp ebx, 0x88
jne 0x42a195
cmp dword [ebp - 0xa4], 0
jne 0x42a195
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 0x42a240
mov eax, 0xa4
cmp word [esi + 4], ax
jne 0x42a274
cmp edx, 1
jg 0x42aca0
mov eax, 0x92
mov word [esi + 4], ax
lea ebx, [eax + 0x12]
jmp 0x42a195
cmp edx, 2
jg 0x42acb1
cmp edx, 1
jne 0x42a195
or eax, 0xffffffff
or ecx, eax
mov dword [ebp - 0xf8], eax
mov dword [ebp - 0x100], ecx
jmp 0x42a1a1
mov edx, dword [ebp - 0xb0]
mov dword [ebp - 0x68], edx
cmp ebx, 0xa4
je 0x42716a
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 0x42a393
cmp dword [ebp - 0x8c], 0xfffffffe
jne 0x42a34d
cmp ecx, 0xfffffffe
je 0x42a34d
test ecx, ecx
js 0x42a337
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 0x42a36b
mov dword [ebp - 0x8c], 0xffffffff
mov dword [ebp - 0xd8], 0xffffffff
jmp 0x42a36b
test ecx, ecx
js 0x42a36b
test eax, eax
jns 0x42a373
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 0x42716a
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 0x426ec0
cmp ebx, 0x7e
jne 0x42716a
test eax, eax
js 0x42716a
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 0x426ec0
cmp ebx, 0x2b
jne 0x42a666
test edi, edi
je 0x42ad08
mov ebx, dword [ebp - 0x6c]
add edi, dword [ebx + 0x48]
jmp 0x42a669
cmp edi, 0x1c
jne 0x42a777
mov esi, dword [ebp - 0x64]
movzx eax, word [esi + 2]
cmp eax, 0x3c
je 0x42a413
cmp eax, 0x27
je 0x42a413
cmp eax, 0x7b
je 0x42a413
add esi, 2
mov dword [edx], 0xa9
mov edx, dword [ebp - 0x68]
mov dword [ebp - 0x64], esi
jmp 0x426ec0
add esi, 2
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x64], esi
movzx eax, word [esi]
cmp eax, 0x3c
jne 0x42a430
lea edi, [eax + 2]
jmp 0x42a440
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 0x42a45f
cmp eax, 0x39
jbe 0x42ad1e
mov edx, 0xff
cmp ax, dx
ja 0x42a48d
mov ecx, dword [ebx + 0x10]
nop dword [eax]
movzx eax, ax
test byte [eax + ecx], 0x10
je 0x42a487
add esi, 2
mov dword [ebp - 0x64], esi
movzx eax, word [esi]
cmp ax, dx
jbe 0x42a470
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 0x42a4bc
test edx, edx
je 0x42ad3c
cmp word [esi], di
jne 0x42ad31
cmp edx, 0x20
jg 0x42ad26
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 0x42ac28
mov esi, edi
movzx eax, word [ebx + 8]
cmp edx, eax
jne 0x42a560
push edx
push dword [ebx]
push ecx
call fcn.0043a6b0
add esp, 0xc
test eax, eax
jne 0x42a554
cmp dword [ebp - 0x90], 0
movzx eax, word [ebx + 0xa]
mov edi, dword [ebx + 4]
mov dword [ebp - 0xc0], eax
jne 0x42a666
cmp edi, 0x20
jge 0x42a524
mov edx, 1
mov ecx, edi
mov eax, edx
shl eax, cl
jmp 0x42a52b
mov eax, 1
mov edx, eax
mov ecx, dword [ebp - 0x6c]
or dword [ecx + 0x54], eax
cmp edi, dword [ecx + 0x50]
jbe 0x42a539
mov dword [ecx + 0x50], edi
mov ecx, dword [ecx + 0x34]
test ecx, ecx
je 0x42a554
movzx eax, word [ecx + 4]
cmp eax, edi
je 0x42a550
mov ecx, dword [ecx]
test ecx, ecx
jne 0x42a540
jmp 0x42a554
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 0x42a4e0
test edi, edi
je 0x42ac25
mov eax, dword [ebp - 0xc0]
test eax, eax
je 0x42a783
xor ecx, ecx
xor ebx, ebx
mov dword [ebp - 0x90], ecx
cmp dword [ebp - 0xa4], ecx
jne 0x42a604
mov eax, dword [ebp - 0x6c]
xor edi, edi
mov esi, dword [eax + 0x28]
cmp cx, word [eax + 0x30]
jae 0x42ad47
nop dword [eax]
push edx
lea eax, [esi + 2]
push eax
push dword [ebp - 0x84]
call fcn.0043a6b0
mov edx, dword [ebp - 0x9c]
add esp, 0xc
mov ecx, dword [ebp - 0x90]
test eax, eax
jne 0x42a5e6
cmp word [esi + edx*2 + 2], ax
jne 0x42a5e6
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 0x42a5b0
test ecx, ecx
je 0x42ad47
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 0x426ec0
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 0x42a72e
xor ecx, ecx
mov word [eax], cx
test edi, edi
je 0x42a6ad
push edi
push dword [ebp - 0x94]
push dword [ebx + 0x18]
call fcn.00425b60
mov esi, eax
add esp, 0xc
mov eax, dword [ebp - 0x68]
test esi, esi
jne 0x42a702
cmp edi, dword [ebx + 0x4c]
ja 0x42ad47
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 0x42a6e9
push ebx
call fcn.0042b930
mov ecx, dword [ebp - 0x70]
add esp, 4
mov dword [ecx], eax
test eax, eax
jne 0x42ab0f
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 0x42a731
cmp word [esi + 2], 0
jne 0x42a72e
cmp dword [ebp + 0x2c], 0
jg 0x42a72e
push ebx
push dword [ebp - 0x94]
push dword [ebp - 0x120]
push eax
push esi
call fcn.0042b440
add esp, 0x14
test eax, eax
jne 0x42ad55
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 0x429323
mov esi, dword [ebp - 0x64]
add esi, 2
mov dword [ebp - 0x8c], 0xffffffff
mov dword [ebp - 0x64], esi
jmp 0x426ec0
test edi, edi
jns 0x42a82e
neg edi
jmp 0x42a78c
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 0x42a7e2
mov esi, 1
mov ecx, edi
mov eax, esi
shl eax, cl
jmp 0x42a7e9
mov eax, 1
mov esi, eax
or dword [ebx + 0x54], eax
cmp edi, dword [ebx + 0x50]
jbe 0x42a7f4
mov dword [ebx + 0x50], edi
mov ecx, dword [ebx + 0x34]
test ecx, ecx
je 0x429323
nop
movzx eax, word [ecx + 4]
cmp eax, edi
je 0x42a81c
mov ecx, dword [ecx]
test ecx, ecx
jne 0x42a800
mov esi, dword [ebp - 0x64]
add esi, 2
mov dword [ebp - 0x64], esi
jmp 0x426ec0
mov word [ecx + 6], si
mov esi, dword [ebp - 0x64]
add esi, 2
mov dword [ebp - 0x64], esi
jmp 0x426ec0
cmp edi, 0xf
je 0x42a8fb
cmp edi, 0x10
je 0x42a8fb
cmp edi, 0xe
jne 0x42a85f
test dword [ebp - 0x98], 0x100000
je 0x42a8b1
mov esi, dword [ebp - 0x64]
mov dword [edx], 0xb7
jmp 0x42ad86
cmp edi, 5
je 0x42a86e
cmp edi, 4
je 0x42a86e
cmp edi, 1
jne 0x42a87b
cmp dword [ebx + 0x68], 0
jne 0x42a87b
mov dword [ebx + 0x68], 1
lea esi, [edi - 0x1d]
cmp esi, 5
ja 0x42a8a7
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 0x426ec0
cmp edi, 5
jle 0x42a8b9
cmp edi, 0x17
jge 0x42a8b9
mov edx, dword [ebp - 0x68]
mov dword [ebp - 0x80], edx
jmp 0x42a8c3
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 0x42a8e4
cmp edi, 0xe
jne 0x42a8e4
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 0x426ec0
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.0042c0d0
add esp, 0x18
test eax, eax
je 0x42ab0f
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 0x426ec0
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 0x42a9c6
mov ax, word [ebp + ecx*2 - 0x34]
inc ecx
mov word [esi], ax
add esi, 2
cmp ecx, edx
jb 0x42a9b3
mov dword [ebp - 0x68], esi
mov ax, word [ebp - 0x34]
cmp ax, 0xd
je 0x42a9d6
cmp ax, 0xa
jne 0x42a9dd
or dword [ebx + 0x44], 0x800
mov edi, dword [ebp - 0x8c]
mov ecx, dword [ebp - 0xc8]
mov dword [ebp - 0xc4], ecx
cmp edi, 0xfffffffe
jne 0x42aa83
mov ecx, dword [ebp - 0xbc]
mov dword [ebp - 0xd8], 0xffffffff
mov dword [ebp - 0xcc], ecx
cmp edx, 1
je 0x42aa41
cmp dword [ebp - 0xf0], 0
je 0x42aa41
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 0x426ec0
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 0x429323
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 0x426ec0
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 0x42aac0
cmp dword [ebp - 0xf0], 0
je 0x42aac0
mov esi, dword [ebp - 0x64]
mov edx, dword [ebp - 0x68]
add esi, 2
mov dword [ebp - 0x64], esi
jmp 0x426ec0
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 0x426ec0
mov eax, dword [ebp - 0x70]
mov dword [eax], 0x78
jmp 0x42ad86
mov eax, dword [ebp - 0x70]
mov dword [eax], 0x6a
jmp 0x42ad86
mov eax, dword [ebp - 0x70]
mov dword [eax], 0x82
mov esi, dword [ebp - 0x64]
jmp 0x42ad86
mov eax, dword [ebp - 0x70]
mov dword [eax], 0x71
jmp 0x42ad86
mov esi, dword [ebp - 0x64]
mov dword [edx], 0x6b
jmp 0x42ad86
mov esi, dword [ebp - 0x64]
mov dword [edx], 0xab
jmp 0x42ad86
mov dword [esi], 0x96
mov esi, dword [ebp - 0x64]
jmp 0x42ad86
mov eax, dword [ebp - 0x70]
mov esi, dword [ebp - 0x64]
mov dword [eax], 0x96
jmp 0x42ad86
mov eax, dword [ebp - 0x70]
mov dword [eax], 0x6c
jmp 0x42ad86
mov ecx, dword [ebp - 0x70]
xor eax, eax
cmp word [esi + 2], 0x3a
setne al
add eax, 0x70
mov dword [ecx], eax
jmp 0x42ad86
mov eax, dword [ebp - 0x70]
mov dword [eax], 0x6e
jmp 0x42ad86
mov dword [eax], 0x6d
jmp 0x42ad86
mov eax, dword [ebp - 0x70]
mov dword [eax], 0xb0
jmp 0x42ad86
mov eax, dword [ebp - 0x70]
mov esi, dword [ebp - 0x64]
mov dword [eax], 0x9f
jmp 0x42ad86
mov eax, dword [ebp - 0x70]
mov esi, dword [ebp - 0x64]
mov dword [eax], 0xa6
jmp 0x42ad86
mov eax, dword [ebp - 0x70]
mov esi, dword [ebp - 0x64]
mov dword [eax], 0xa0
jmp 0x42ad86
mov eax, dword [ebp - 0x70]
mov dword [eax], 0xa0
jmp 0x42ad86
mov eax, dword [ebp - 0x70]
mov dword [eax], 0x80
jmp 0x42ad86
mov eax, dword [ebp - 0x70]
mov dword [eax], 0xb3
jmp 0x42ad86
mov eax, dword [ebp - 0x70]
mov dword [eax], 0x90
jmp 0x42ad86
mov eax, dword [ebp - 0x70]
mov dword [eax], 0x87
jmp 0x42ad86
mov esi, dword [ebp - 0x64]
mov eax, dword [ebp - 0x70]
mov dword [eax], 0x73
jmp 0x42ad86
mov eax, dword [ebp - 0x70]
sub esi, 2
mov dword [eax], 0x7e
jmp 0x42ad86
mov eax, dword [ebp - 0x70]
mov esi, edi
mov dword [eax], 0xb5
jmp 0x42ad86
mov eax, dword [ebp - 0x70]
mov dword [eax], 0x8a
jmp 0x42ad86
mov eax, dword [ebp - 0x70]
mov dword [eax], 0x8b
jmp 0x42ad86
mov eax, dword [ebp - 0x70]
mov dword [eax], 0x8d
jmp 0x42ad86
mov eax, dword [ebp - 0x70]
mov dword [eax], 0xa3
jmp 0x42ad86
mov eax, dword [ebp - 0x70]
sub esi, 2
mov dword [eax], 0x6f
jmp 0x42ad86
mov eax, dword [ebp - 0x70]
mov esi, dword [ebp - 0x64]
mov dword [eax], 0x9a
jmp 0x42ad86
mov eax, dword [ebp - 0x70]
mov esi, dword [ebp - 0x64]
mov dword [eax], 0x7f
jmp 0x42ad86
mov eax, dword [ebp - 0x70]
mov dword [eax], 0x72
jmp 0x42ad86
mov eax, dword [ebp - 0x70]
mov dword [eax], 0x77
jmp 0x42ad86
movzx eax, word [esi]
cmp eax, 0x30
jb 0x42acfa
cmp ax, 0x39
ja 0x42acfa
add esi, 2
mov dword [ebp - 0x64], esi
movzx eax, word [esi]
cmp eax, 0x30
jae 0x42ace6
mov eax, dword [ebp - 0x70]
mov dword [eax], 0xa1
jmp 0x42ad86
mov eax, dword [ebp - 0x70]
mov dword [eax], 0x9e
jmp 0x42ad86
mov eax, dword [ebp - 0x70]
mov dword [eax], 0x81
jmp 0x42ad86
mov dword [edx], 0x90
jmp 0x42ad86
mov eax, dword [ebp - 0x70]
mov dword [eax], 0x94
jmp 0x42ad86
mov eax, dword [ebp - 0x70]
mov dword [eax], 0x8e
jmp 0x42ad86
mov eax, dword [ebp - 0x70]
mov dword [eax], 0xa2
jmp 0x42ad86
mov eax, dword [ebp - 0x70]
mov esi, dword [ebp - 0x64]
mov dword [eax], 0x73
jmp 0x42ad86
mov eax, dword [ebp - 0x70]
mov esi, dword [ebp - 0x64]
mov dword [eax], 0x8c
jmp 0x42ad86
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.00424a0b
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.00424a0b
mov esp, ebp
pop ebp
ret