Function at 0x416dc0
Capabilities:
Contain obfuscated stackstrings
Encode data using base64
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x7a8
xor edx, edx
mov eax, dword [ebp + 8]
lea ecx, [ebp - 0x2a0]
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x10], edi
mov esi, dword [eax + 4]
push 0xac
push edx
mov edi, dword [esi + 0x5c]
push ecx
mov dword [ebp - 0xc], ebx
mov dword [ebp - 0x18], eax
mov dword [edi + 0x14], edx
call fcn.004cda30
add esp, 0xc
mov dword [ebp - 0x2a0], esi
or byte [ebp - 0x1f9], 8
test byte [esi + 0x178], 0x40
je 0x416e15
mov ecx, 0x4ee300
jmp 0x416e1a
mov ecx, 0x4ee1e0
mov edx, dword [esi + 0x40]
test edx, edx
mov ebx, dword [esi + 0x3c]
movzx eax, word [esi + 0x160]
je 0x416e31
add edx, eax
sub edx, ebx
jmp 0x416e38
sub eax, ebx
mov edx, eax
add edx, dword [esi + 0x38]
cmp byte [esi + 0x168], 1
lea ebx, [edx - 1]
mov dword [ebp - 0x1c], ecx
je 0x416e49
mov ebx, edx
test ebx, ebx
jg 0x416e52
mov ebx, 0
xor edx, edx
mov dword [ebp - 0x28], ebx
mov ebx, 1
mov dword [ebp - 8], edx
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x2c], edx
mov dword [ebp - 4], edi
mov edi, edx
mov ecx, dword [ebp - 4]
test byte [ecx + 0x29], 2
jne 0x41a3dd
cmp ebx, 1
jle 0x416f8a
mov ecx, dword [ebp - 0x420]
cmp ecx, 7
je 0x416e97
cmp ecx, 8
jne 0x416f67
test edi, edi
je 0x416eb1
mov edi, dword [ebp - 0x1bc]
xor edx, edx
add dword [ebp - 0x1c8], edi
dec ebx
xor edi, edi
jmp 0x417249
cmp dword [ebp - 0x20], 0
mov ecx, dword [ebp - 0x41c]
je 0x416ec2
mov edi, 1
mov dword [ebp - 0x30], ecx
test ecx, ecx
jle 0x416f3f
mov eax, ecx
shr eax, 0x1f
xor edx, edx
add eax, ecx
sar eax, 1
test eax, eax
jbe 0x41a346
mov dword [ebp - 0x34], esi
xor ecx, ecx
mov esi, dword [ebp + ecx*8 - 0x1b4]
sub esi, dword [ebp + ecx*8 - 0xbc]
imul esi, dword [ebp + ecx*8 - 0x138]
add edx, esi
mov esi, dword [ebp + ecx*8 - 0x1b0]
sub esi, dword [ebp + ecx*8 - 0xb8]
imul esi, dword [ebp + ecx*8 - 0x134]
inc ecx
add edx, esi
cmp ecx, eax
jb 0x416ee1
mov esi, dword [ebp - 0x34]
lea ecx, [ecx + ecx + 1]
lea eax, [ecx - 1]
cmp eax, dword [ebp - 0x30]
jae 0x416f41
mov eax, dword [ebp + ecx*4 - 0x1b8]
sub eax, dword [ebp + ecx*4 - 0xc0]
imul eax, dword [ebp + ecx*4 - 0x13c]
add edx, eax
jmp 0x416f41
xor edx, edx
add edx, dword [ebp - 0x418]
lea ecx, [ebp - 0x420]
push ecx
mov dword [ebp - 0x1c8], edx
lea eax, [ebp - 0x1b4]
push eax
push 0
call fcn.00439050
add esp, 0xc
jmp 0x416f73
mov ecx, dword [ebp - 0x1bc]
add dword [ebp - 0x1c8], ecx
or byte [esi + 0x181], 0x80
dec ebx
mov dword [esi + 0x130], 0
jmp 0x417249
lea ecx, [ebp - 0x420]
push ecx
lea ebx, [ebp - 0x1c8]
push ebx
lea eax, [ebp + 0x10]
push eax
lea edx, [ebp + 0xc]
push edx
call fcn.00440b60
mov dword [ebp - 0x2c], eax
add esp, 0x10
cmp dword [ebp - 0x2c], 0
jne 0x41a36c
mov ecx, dword [ebp - 0x1c0]
cmp ecx, 2
je 0x41a3e7
cmp ecx, 1
je 0x41a364
mov ebx, dword [ebp - 0x420]
cmp ebx, 7
jl 0x4171bb
cmp ebx, 8
jg 0x4171bb
mov ebx, dword [ebp - 0x1bc]
test ebx, ebx
je 0x416ffc
mov eax, dword [ebp - 0x1c4]
cdq
idiv ebx
mov ebx, eax
jmp 0x41700f
test byte [esi + 0x178], 2
je 0x4171ad
mov ebx, dword [ebp - 0x1c4]
test ebx, ebx
je 0x4171af
lea eax, [ecx - 0x1c]
cmp eax, 0x10
jbe 0x41702b
cmp ecx, 0x34
je 0x41702b
xor ecx, ecx
mov dword [ebp - 0x20], ecx
jmp 0x417033
mov edi, 1
mov dword [ebp - 0x20], edi
mov ecx, dword [ebp - 0x41c]
test ecx, ecx
mov dword [ebp - 0x434], ecx
jle 0x417182
mov eax, ecx
mov ecx, eax
shr ecx, 0x1f
add ecx, eax
sar ecx, 1
test ecx, ecx
jbe 0x41a35a
mov dword [ebp - 0x444], edi
xor edx, edx
mov dword [ebp - 0x34], esi
lea esi, [esi]
lea edi, [edi]
lea esi, [edx + edx*2]
mov edi, dword [ebp + esi*8 - 0x40c]
mov dword [ebp + edx*8 - 0x138], edi
mov eax, dword [ebp + esi*8 - 0x410]
mov edi, dword [ebp + esi*8 - 0x404]
mov esi, dword [ebp + esi*8 - 0x400]
mov dword [ebp + edx*8 - 0xbc], eax
mov dword [ebp + edx*8 - 0x1b4], eax
mov dword [ebp + edx*8 - 0xb8], edi
mov dword [ebp + edx*8 - 0x134], esi
mov dword [ebp + edx*8 - 0x1b0], edi
inc edx
cmp edx, ecx
jb 0x417070
mov edi, dword [ebp - 0x444]
lea ecx, [edx + edx + 1]
mov esi, dword [ebp - 0x34]
lea eax, [ecx - 1]
cmp eax, dword [ebp - 0x434]
jae 0x417103
lea eax, [ecx*8]
lea eax, [eax + ecx*4]
mov edx, dword [ebp + eax - 0x41c]
mov eax, dword [ebp + eax - 0x418]
mov dword [ebp + ecx*4 - 0xc0], edx
mov dword [ebp + ecx*4 - 0x13c], eax
mov dword [ebp + ecx*4 - 0x1b8], edx
mov ecx, dword [ebp - 0x434]
mov eax, ecx
shr eax, 0x1f
xor edx, edx
add eax, ecx
sar eax, 1
test eax, eax
jbe 0x41a350
mov dword [ebp - 0x34], esi
xor ecx, ecx
mov esi, dword [ebp + ecx*8 - 0x1b4]
sub esi, dword [ebp + ecx*8 - 0xbc]
imul esi, dword [ebp + ecx*8 - 0x138]
add edx, esi
mov esi, dword [ebp + ecx*8 - 0x1b0]
sub esi, dword [ebp + ecx*8 - 0xb8]
imul esi, dword [ebp + ecx*8 - 0x134]
inc ecx
add edx, esi
cmp ecx, eax
jb 0x417121
mov esi, dword [ebp - 0x34]
lea ecx, [ecx + ecx + 1]
lea eax, [ecx - 1]
cmp eax, dword [ebp - 0x434]
jae 0x417184
mov eax, dword [ebp + ecx*4 - 0x1b8]
sub eax, dword [ebp + ecx*4 - 0xc0]
imul eax, dword [ebp + ecx*4 - 0x13c]
add edx, eax
jmp 0x417184
xor edx, edx
add edx, dword [ebp - 0x418]
lea ecx, [ebp - 0x420]
push ecx
mov dword [ebp - 0x1c8], edx
lea eax, [ebp - 0x1b4]
push eax
push 0
call fcn.00439050
add esp, 0xc
jmp 0x417238
xor ebx, ebx
mov dword [ebp - 8], 1
jmp 0x416e6d
cmp ebx, 6
je 0x4171c5
cmp ebx, 5
jne 0x41721f
movzx ecx, byte [esi + 0x178]
and ecx, 2
mov eax, dword [ebp - 0x1bc]
shr ecx, 1
mov ebx, dword [ebp - 0x1c4]
test eax, eax
mov dword [ebp - 0x1cc], eax
je 0x4171fa
mov eax, ebx
cdq
mov ebx, dword [ebp - 0x1cc]
idiv ebx
mov ebx, eax
test ecx, ecx
jne 0x417205
jmp 0x417249
test ecx, ecx
jne 0x417203
mov ebx, 0
je 0x417249
test ebx, ebx
jne 0x417238
mov dword [esi + 0x130], 1
mov dword [ebp - 8], 1
jmp 0x416e6d
lea ebx, [ecx - 0x1c]
cmp ebx, 0x10
jbe 0x417233
cmp ecx, 0x34
je 0x417233
mov ebx, 1
jmp 0x417238
mov ebx, 2
mov dword [esi + 0x130], 0
or byte [esi + 0x181], 0x80
cmp dword [ebp - 8], 0
jne 0x416e6d
mov ecx, dword [ebp - 0x1c0]
cmp ecx, 0x3f
mov dword [ebp - 0x38], ecx
je 0x419ca8
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x38]
movsx ecx, byte [ecx + eax*4]
test ecx, ecx
je 0x419c23
cmp dword [ebp - 0x38], 0x38
je case.default.0x41734f
mov dword [ebp - 0x3c], ecx
mov dword [ebp - 0x210], ecx
mov ecx, dword [ebp - 0x1c]
mov edx, eax
mov byte [ebp - 0x204], 1
movsx eax, byte [ecx + edx*4 + 1]
mov word [ebp - 0x208], ax
movsx eax, byte [ecx + edx*4 + 2]
movzx ecx, byte [ecx + edx*4 + 3]
mov byte [ebp - 0x200], cl
xor ecx, ecx
mov dword [ebp - 0x1fc], ecx
mov word [ebp - 0x206], ax
mov dword [ebp - 0x1f8], ecx
mov byte [ebp - 0x1f9], 8
movzx ecx, byte [esi + 0x178]
shr ecx, 6
and ecx, 1
mov byte [ebp - 0x1f8], cl
movzx eax, byte [esi + 0x175]
test eax, eax
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x3c]
je 0x41733e
cmp eax, 1
je 0x41732b
cmp eax, 2
jne 0x417311
movzx edx, byte [ebp - 0x1fc]
or edx, 4
and edx, 0xffffffe7
mov byte [ebp - 0x1fc], dl
jmp 0x41733e
cmp eax, 3
jne 0x41733e
movzx edx, byte [ebp - 0x1fc]
and edx, 0xffffffeb
or edx, 8
mov byte [ebp - 0x1fc], dl
jmp 0x41733e
movzx edx, byte [ebp - 0x1fc]
and edx, 0xfffffff3
or edx, 0x10
mov byte [ebp - 0x1fc], dl
movzx eax, byte [esi + 0x171]
test eax, eax
je case.default.0x41734f
dec eax
cmp eax, 4
ja case.default.0x41734f
jmp dword [eax*4 + 0x4e9d44]
mov edx, dword [ebp - 0x40]
or edx, 0x40
mov byte [ebp - 0x1f8], dl
jmp case.default.0x41734f
mov edx, dword [ebp - 0x40]
or edx, 0x20
mov byte [ebp - 0x1f8], dl
jmp case.default.0x41734f
mov edx, dword [ebp - 0x40]
or edx, 0x10
mov byte [ebp - 0x1f8], dl
jmp case.default.0x41734f
mov edx, dword [ebp - 0x40]
or edx, 8
mov byte [ebp - 0x1f8], dl
jmp case.default.0x41734f
mov edx, dword [ebp - 0x40]
or edx, 4
mov byte [ebp - 0x1f8], dl
mov eax, dword [ebp - 0x38]
lea eax, [eax - 5]
cmp eax, 0x33
ja case.0x4173a9.18
jmp dword [eax*4 + 0x4e9d60]
mov ecx, dword [ebp - 0x1bc]
mov dword [ebp - 0x43c], ecx
mov ecx, dword [ebp - 0x28]
mov dword [ebp - 0x464], 0
mov eax, dword [ebp - 0x1c8]
mov dword [ebp - 0x45c], ecx
movzx ecx, byte [esi + 0x178]
test cl, 2
mov dword [ebp - 0x458], eax
mov dword [ebp - 0x440], eax
je 0x417401
xor edx, edx
cmp byte [esi + 0x16b], 0
setne dl
mov dword [ebp - 0x460], edx
jmp 0x41740b
mov dword [ebp - 0x460], 0
mov eax, dword [ebp - 4]
test byte [eax + 0x2a], 0x10
je 0x41745a
mov eax, dword [ebp - 0x28]
cmp eax, dword [ebp - 0x43c]
jl 0x41745a
cmp dword [ebp - 0x28], 1
jle 0x41744f
mov ecx, dword [esi + 0x3c]
mov byte [ecx], 0x20
cmp byte [esi + 0x168], 1
lea ecx, [eax - 1]
je 0x417439
mov eax, ecx
mov ecx, dword [ebp - 4]
inc dword [esi + 0x3c]
mov dword [ebp - 0x28], eax
and byte [ecx + 0x2a], 0xef
movzx ecx, byte [esi + 0x178]
jmp 0x41745a
je 0x4194b4
xor edx, edx
mov dword [ebp - 0x28], edx
test cl, 2
je 0x4175bc
cmp dword [ebp - 0x460], 0
jne 0x4174a7
test cl, 8
jne 0x4175bc
mov ecx, dword [esi + 0x134]
test ecx, ecx
je 0x4175bc
cmp ecx, 0x38
je 0x4175bc
cmp dword [ebp - 0x28], 0
jle 0x4175bc
mov ecx, dword [esi + 0x3c]
dec dword [ebp - 0x28]
mov byte [ecx], 0x20
inc dword [esi + 0x3c]
jmp 0x4175bc
lea ecx, [ebp - 0x464]
push ecx
push 0
push dword [esi + 0xf4]
call fcn.00431e20
mov dword [ebp - 0x2c], eax
add esp, 0xc
cmp dword [ebp - 0x2c], 0
jne 0x4177a6
mov ecx, dword [ebp - 0x464]
mov dword [ebp - 0x440], ecx
cmp dword [esi + 0x134], 0
je 0x4174f5
mov byte [ecx], 0x20
mov ecx, dword [ebp - 0x464]
mov dword [ebp - 0x508], 1
jmp 0x4174ff
mov dword [ebp - 0x508], 0
mov eax, dword [ebp - 0x508]
movzx edx, byte [esi + 0x16b]
mov byte [ecx + eax], dl
inc eax
mov dword [ebp - 0x508], eax
cmp dword [ebp - 0x43c], 0
jle 0x41758b
mov dword [ebp - 0x468], ebx
xor ecx, ecx
mov dword [ebp - 0x444], edi
mov edi, eax
mov ebx, dword [ebp - 0x458]
movsx edx, byte [ebx]
cmp dl, byte [esi + 0x16b]
jne 0x417556
cmp edi, dword [esi + 0x100]
je 0x41942f
mov eax, dword [ebp - 0x464]
mov byte [edi + eax], dl
inc edi
cmp edi, dword [esi + 0x100]
je 0x4193aa
mov eax, dword [ebp - 0x464]
inc ecx
movzx edx, byte [ebx]
inc ebx
mov byte [edi + eax], dl
inc edi
cmp ecx, dword [ebp - 0x43c]
jl 0x417535
mov dword [ebp - 0x508], edi
mov ebx, dword [ebp - 0x468]
mov edi, dword [ebp - 0x444]
mov ecx, dword [ebp - 0x508]
cmp ecx, dword [esi + 0x100]
je 0x419325
mov ecx, dword [ebp - 0x464]
mov eax, dword [ebp - 0x508]
movzx edx, byte [esi + 0x16b]
mov byte [eax + ecx], dl
lea ecx, [eax + 1]
mov dword [ebp - 0x43c], ecx
cmp dword [esi + 0x100], 2
jae 0x4175d4
mov ecx, dword [ebp - 0x28]
cmp ecx, dword [ebp - 0x43c]
jl 0x418f98
mov ecx, dword [ebp - 0x43c]
cmp ecx, dword [ebp - 0x45c]
jle 0x417956
mov eax, dword [esi + 0x3c]
cmp eax, dword [esi + 0x38]
je 0x417956
cmp eax, dword [esi + 0x40]
je 0x417956
movzx ecx, word [esi + 0x160]
cmp ecx, dword [ebp - 0x45c]
je 0x417613
test byte [esi + 0x178], 0x40
je 0x417650
mov ecx, dword [ebp - 4]
test byte [ecx + 0x2a], 0x10
je 0x41762c
mov byte [eax], 0x20
inc dword [esi + 0x3c]
and byte [ecx + 0x2a], 0xef
dec dword [ebp - 0x28]
mov eax, dword [esi + 0x3c]
push dword [ebp - 0x28]
push dword [ebp - 0x440]
push eax
call fcn.004cd9d0
add esp, 0xc
mov ecx, dword [ebp - 0x28]
sub dword [ebp - 0x43c], ecx
add dword [ebp - 0x440], ecx
add dword [esi + 0x3c], ecx
movzx ecx, byte [esi + 0x168]
mov dword [ebp - 0x4e0], ecx
movzx ecx, byte [esi + 0x166]
mov dword [ebp - 0x4dc], ecx
test byte [esi + 0x17b], 4
je 0x417683
mov byte [esi + 0x168], 3
mov byte [esi + 0x166], 5
jmp 0x417698
mov ecx, dword [ebp - 4]
or byte [ecx + 0x2a], 0x10
xor ecx, ecx
mov dword [esi + 0x130], ecx
mov dword [esi + 0x134], ecx
push esi
call fcn.00435cb0
mov dword [ebp - 0x2c], eax
add esp, 4
mov ecx, dword [ebp - 0x4e0]
mov byte [esi + 0x168], cl
mov ecx, dword [ebp - 0x4dc]
mov byte [esi + 0x166], cl
cmp dword [ebp - 0x2c], 0
je 0x4176e2
mov edx, dword [ebp - 4]
mov ecx, eax
mov dword [edx + 0x14], ecx
movsx eax, byte [esi + 0x168]
mov ecx, dword [esi + 0x40]
mov edx, dword [esi + 0x3c]
mov dword [ebp - 0x4e4], eax
jmp 0x41791b
push 0
push esi
call fcn.00437060
add esp, 8
test eax, eax
jne 0x41904e
movsx ecx, byte [esi + 0x166]
mov dword [ebp - 0x514], ecx
lea ecx, [ecx - 1]
cmp ecx, 7
ja case.default.0x41770e
jmp dword [ecx*4 + 0x4e9e40]
mov ecx, dword [esi + 0x40]
test ecx, ecx
je 0x417722
mov edx, ecx
mov eax, ecx
jmp 0x417727
mov edx, dword [esi + 0x38]
mov eax, edx
mov dword [esi + 0x3c], eax
mov eax, dword [esi + 0x100]
lea eax, [edx + eax - 1]
mov dword [esi + 0x44], eax
movzx eax, byte [esi + 0x178]
mov dword [ebp - 0x51c], eax
jmp 0x41787f
mov edx, dword [esi + 0x18]
test edx, edx
je 0x41901d
test byte [edx + 0x44], 2
je 0x417789
mov ecx, 0x2c
mov dword [edx + 0x38], ecx
mov edx, dword [esi + 0x18]
mov dword [edx + 0x3c], ecx
mov edx, dword [esi + 0x64]
test edx, edx
je 0x417777
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [esi + 0x64], ecx
mov eax, 0x2c
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
mov edx, 0x2c
push edx
movzx ecx, byte [esi + 0x17c]
push edx
and ecx, 7
push ecx
push 0xffffffffffffffff
push esi
call fcn.0043da80
add esp, 0x14
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
mov ecx, dword [esi + 0x40]
test ecx, ecx
je 0x4177bf
lea edx, [ecx + 4]
jmp 0x4177c5
mov edx, dword [esi + 0x38]
add edx, 4
mov eax, dword [esi + 0x100]
mov dword [esi + 0x3c], edx
lea eax, [edx + eax - 8]
mov dword [esi + 0x44], eax
movzx eax, byte [esi + 0x178]
mov dword [ebp - 0x51c], eax
jmp 0x41787f
mov ecx, dword [esi + 0x40]
test ecx, ecx
je 0x4177f4
mov edx, ecx
mov eax, ecx
jmp 0x4177f9
mov edx, dword [esi + 0x38]
mov eax, edx
mov dword [esi + 0x3c], eax
mov eax, dword [esi + 0x100]
mov dword [ebp - 0x6c0], eax
add eax, edx
mov dword [ebp - 0x6bc], eax
movzx eax, byte [esi + 0x178]
test al, 4
mov dword [ebp - 0x51c], eax
je 0x41783c
test byte [esi + 0x17a], 0x40
je 0x41783c
test byte [esi + 0x17b], 8
je 0x41783c
cmp dword [ebp - 0x514], 1
je 0x417847
mov eax, dword [ebp - 0x6bc]
mov dword [esi + 0x44], eax
jmp 0x41787f
mov eax, dword [ebp - 0x6c0]
lea eax, [edx + eax - 2]
mov dword [esi + 0x44], eax
jmp 0x41787f
push 0x87a
push str.for_wseq_lis.c
push 2
push 8
call fcn.0040b430
add esp, 0x10
movzx ecx, byte [esi + 0x178]
mov dword [ebp - 0x51c], ecx
mov ecx, dword [esi + 0x40]
mov edx, dword [esi + 0x3c]
test byte [ebp - 0x51c], 4
je 0x4178a7
test byte [esi + 0x17a], 0x40
je 0x4178a7
test byte [esi + 0x17b], 8
je 0x4178a7
cmp byte [esi + 0x166], 1
je 0x41903c
movsx eax, byte [esi + 0x168]
cmp eax, 2
mov dword [ebp - 0x4e4], eax
jne 0x4178d4
movsx eax, byte [esi + 0x166]
cmp eax, 7
je 0x4178fc
cmp eax, 6
je 0x4178fc
cmp eax, 8
je 0x4178fc
dec dword [esi + 0x44]
jmp 0x4178fc
cmp dword [ebp - 0x4e4], 1
jne 0x4178fc
movsx eax, byte [esi + 0x166]
cmp eax, 7
je 0x4178f6
cmp eax, 6
je 0x4178f6
cmp eax, 8
je 0x4178f6
dec dword [esi + 0x44]
add edx, 5
mov dword [esi + 0x3c], edx
add dword [esi + 0xa0], 1
mov dword [esi + 0x48], edx
mov dword [esi + 0x4c], 0
adc dword [esi + 0xa4], 0
and byte [esi + 0x17f], 0xfb
movzx eax, word [esi + 0x160]
test ecx, ecx
je 0x41792c
sub ecx, edx
add ecx, eax
jmp 0x417933
sub eax, edx
mov ecx, eax
add ecx, dword [esi + 0x38]
mov eax, dword [ebp - 4]
cmp dword [ebp - 0x4e4], 1
movzx edx, byte [eax + 0x2a]
mov dword [ebp - 0x1b8], edx
lea edx, [ecx - 1]
je 0x41794e
mov edx, ecx
mov dword [ebp - 0x28], edx
jmp 0x417c86
mov ecx, dword [ebp - 4]
cmp dword [ebp - 0x43c], 0
movzx ecx, byte [ecx + 0x2a]
mov dword [ebp - 0x1b8], ecx
jne 0x417c86
test byte [ebp - 0x1b8], 0x10
je 0x417c86
movzx ecx, byte [esi + 0x168]
mov dword [ebp - 0x4fc], ecx
movzx ecx, byte [esi + 0x166]
mov dword [ebp - 0x500], ecx
test byte [esi + 0x17b], 4
je 0x4179b0
mov byte [esi + 0x168], 3
mov byte [esi + 0x166], 5
jmp 0x4179cd
mov ecx, dword [ebp - 4]
mov edx, dword [ebp - 0x1b8]
or edx, 0x10
mov byte [ecx + 0x2a], dl
xor ecx, ecx
mov dword [esi + 0x130], ecx
mov dword [esi + 0x134], ecx
push esi
call fcn.00435cb0
mov dword [ebp - 0x2c], eax
add esp, 4
mov ecx, dword [ebp - 0x4fc]
mov byte [esi + 0x168], cl
mov ecx, dword [ebp - 0x500]
mov byte [esi + 0x166], cl
cmp dword [ebp - 0x2c], 0
je 0x417a17
mov edx, dword [ebp - 4]
mov ecx, eax
mov dword [edx + 0x14], ecx
movsx eax, byte [esi + 0x168]
mov ecx, dword [esi + 0x40]
mov edx, dword [esi + 0x3c]
mov dword [ebp - 0x504], eax
jmp 0x417c50
push 0
push esi
call fcn.00437060
add esp, 8
test eax, eax
jne 0x4192a0
movsx ecx, byte [esi + 0x166]
mov dword [ebp - 0x6b4], ecx
lea ecx, [ecx - 1]
cmp ecx, 7
ja case.default.0x417a43
jmp dword [ecx*4 + 0x4e9e60]
mov ecx, dword [esi + 0x40]
test ecx, ecx
je 0x417a57
mov edx, ecx
mov eax, ecx
jmp 0x417a5c
mov edx, dword [esi + 0x38]
mov eax, edx
mov dword [esi + 0x3c], eax
mov eax, dword [esi + 0x100]
lea eax, [edx + eax - 1]
mov dword [esi + 0x44], eax
movzx eax, byte [esi + 0x178]
mov dword [ebp - 0x6b8], eax
jmp 0x417bb4
mov edx, dword [esi + 0x18]
test edx, edx
je 0x4190d3
test byte [edx + 0x44], 2
je 0x417abe
mov ecx, 0x2c
mov dword [edx + 0x38], ecx
mov edx, dword [esi + 0x18]
mov dword [edx + 0x3c], ecx
mov edx, dword [esi + 0x64]
test edx, edx
je 0x417aac
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [esi + 0x64], ecx
mov eax, 0x2c
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
mov edx, 0x2c
push edx
movzx ecx, byte [esi + 0x17c]
push edx
and ecx, 7
push ecx
push 0xffffffffffffffff
push esi
call fcn.0043da80
add esp, 0x14
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
mov ecx, dword [esi + 0x40]
test ecx, ecx
je 0x417af4
lea edx, [ecx + 4]
jmp 0x417afa
mov edx, dword [esi + 0x38]
add edx, 4
mov eax, dword [esi + 0x100]
mov dword [esi + 0x3c], edx
lea eax, [edx + eax - 8]
mov dword [esi + 0x44], eax
movzx eax, byte [esi + 0x178]
mov dword [ebp - 0x6b8], eax
jmp 0x417bb4
mov ecx, dword [esi + 0x40]
test ecx, ecx
je 0x417b29
mov edx, ecx
mov eax, ecx
jmp 0x417b2e
mov edx, dword [esi + 0x38]
mov eax, edx
mov dword [esi + 0x3c], eax
mov eax, dword [esi + 0x100]
mov dword [ebp - 0x798], eax
add eax, edx
mov dword [ebp - 0x794], eax
movzx eax, byte [esi + 0x178]
test al, 4
mov dword [ebp - 0x6b8], eax
je 0x417b71
test byte [esi + 0x17a], 0x40
je 0x417b71
test byte [esi + 0x17b], 8
je 0x417b71
cmp dword [ebp - 0x6b4], 1
je 0x417b7c
mov eax, dword [ebp - 0x794]
mov dword [esi + 0x44], eax
jmp 0x417bb4
mov eax, dword [ebp - 0x798]
lea eax, [edx + eax - 2]
mov dword [esi + 0x44], eax
jmp 0x417bb4
push 0x881
push str.for_wseq_lis.c
push 2
push 8
call fcn.0040b430
add esp, 0x10
movzx ecx, byte [esi + 0x178]
mov dword [ebp - 0x6b8], ecx
mov ecx, dword [esi + 0x40]
mov edx, dword [esi + 0x3c]
test byte [ebp - 0x6b8], 4
je 0x417bdc
test byte [esi + 0x17a], 0x40
je 0x417bdc
test byte [esi + 0x17b], 8
je 0x417bdc
cmp byte [esi + 0x166], 1
je 0x4190f2
movsx eax, byte [esi + 0x168]
cmp eax, 2
mov dword [ebp - 0x504], eax
jne 0x417c09
movsx eax, byte [esi + 0x166]
cmp eax, 7
je 0x417c31
cmp eax, 6
je 0x417c31
cmp eax, 8
je 0x417c31
dec dword [esi + 0x44]
jmp 0x417c31
cmp dword [ebp - 0x504], 1
jne 0x417c31
movsx eax, byte [esi + 0x166]
cmp eax, 7
je 0x417c2b
cmp eax, 6
je 0x417c2b
cmp eax, 8
je 0x417c2b
dec dword [esi + 0x44]
add edx, 5
mov dword [esi + 0x3c], edx
add dword [esi + 0xa0], 1
mov dword [esi + 0x48], edx
mov dword [esi + 0x4c], 0
adc dword [esi + 0xa4], 0
and byte [esi + 0x17f], 0xfb
movzx eax, word [esi + 0x160]
test ecx, ecx
je 0x417c61
sub ecx, edx
add ecx, eax
jmp 0x417c68
sub eax, edx
mov ecx, eax
add ecx, dword [esi + 0x38]
mov eax, dword [ebp - 4]
cmp dword [ebp - 0x504], 1
movzx edx, byte [eax + 0x2a]
mov dword [ebp - 0x1b8], edx
lea edx, [ecx - 1]
je 0x417c83
mov edx, ecx
mov dword [ebp - 0x28], edx
mov ecx, dword [ebp - 0x28]
cmp ecx, dword [ebp - 0x43c]
jge 0x417ff4
mov dword [ebp - 0x468], ebx
mov dword [ebp - 0x444], edi
mov ebx, ecx
mov edx, dword [ebp - 0x1b8]
test dl, 0x10
je 0x417cf6
test byte [esi + 0x178], 2
je 0x417cc0
cmp dword [ebp - 0x460], 0
jne 0x417ced
cmp ebx, 1
jle 0x417ce5
mov edx, dword [esi + 0x3c]
lea ecx, [ebx - 1]
mov edi, dword [ebp - 4]
mov byte [edx], 0x20
cmp byte [esi + 0x168], 1
je 0x417cdc
mov ebx, ecx
inc dword [esi + 0x3c]
movzx edx, byte [edi + 0x2a]
jmp 0x417ced
je 0x41928e
xor ebx, ebx
mov ecx, dword [ebp - 4]
and edx, 0xffffffef
mov byte [ecx + 0x2a], dl
push ebx
push dword [ebp - 0x440]
push dword [esi + 0x3c]
call fcn.004cd9d0
add esp, 0xc
movzx edx, byte [esi + 0x166]
add dword [ebp - 0x440], ebx
sub dword [ebp - 0x43c], ebx
add dword [esi + 0x3c], ebx
movzx ebx, byte [esi + 0x168]
mov dword [ebp - 0x438], edx
test byte [esi + 0x17b], 4
je 0x417d44
mov byte [esi + 0x168], 3
mov byte [esi + 0x166], 5
jmp 0x417d59
mov edi, dword [ebp - 4]
xor edx, edx
or byte [edi + 0x2a], 0x10
mov dword [esi + 0x130], edx
mov dword [esi + 0x134], edx
push esi
call fcn.00435cb0
mov edi, eax
add esp, 4
mov edx, dword [ebp - 0x438]
test edi, edi
mov byte [esi + 0x168], bl
mov byte [esi + 0x166], dl
je 0x417d92
mov edx, dword [ebp - 4]
mov dword [edx + 0x14], edi
mov edx, dword [esi + 0x40]
mov ebx, dword [esi + 0x3c]
movsx ecx, byte [esi + 0x168]
jmp 0x417f9b
push 0
push esi
call fcn.00437060
add esp, 8
test eax, eax
jne 0x419209
movsx edx, byte [esi + 0x166]
mov dword [ebp - 0x4d8], edx
lea edx, [edx - 1]
cmp edx, 7
ja case.default.0x417dbe
jmp dword [edx*4 + 0x4e9e80]
mov edx, dword [esi + 0x40]
test edx, edx
je 0x417dd2
mov ebx, edx
mov ecx, edx
jmp 0x417dd7
mov ebx, dword [esi + 0x38]
mov ecx, ebx
mov dword [esi + 0x3c], ecx
mov ecx, dword [esi + 0x100]
lea ecx, [ebx + ecx - 1]
mov dword [esi + 0x44], ecx
movzx ecx, byte [esi + 0x178]
jmp 0x417f0d
mov edx, dword [esi + 0x18]
test edx, edx
je 0x419104
test byte [edx + 0x44], 2
je 0x417e33
mov ecx, 0x2c
mov dword [edx + 0x38], ecx
mov edx, dword [esi + 0x18]
mov dword [edx + 0x3c], ecx
mov edx, dword [esi + 0x64]
test edx, edx
je 0x417e21
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [esi + 0x64], ecx
mov eax, 0x2c
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
mov edx, 0x2c
push edx
movzx ecx, byte [esi + 0x17c]
push edx
and ecx, 7
push ecx
push 0xffffffffffffffff
push esi
call fcn.0043da80
add esp, 0x14
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
mov edx, dword [esi + 0x40]
test edx, edx
je 0x417e69
lea ebx, [edx + 4]
jmp 0x417e6f
mov ebx, dword [esi + 0x38]
add ebx, 4
mov ecx, dword [esi + 0x100]
mov dword [esi + 0x3c], ebx
lea ecx, [ebx + ecx - 8]
mov dword [esi + 0x44], ecx
movzx ecx, byte [esi + 0x178]
jmp 0x417f0d
mov edx, dword [esi + 0x40]
test edx, edx
je 0x417e98
mov ebx, edx
mov ecx, edx
jmp 0x417e9d
mov ebx, dword [esi + 0x38]
mov ecx, ebx
mov dword [esi + 0x3c], ecx
mov ecx, dword [esi + 0x100]
mov dword [ebp - 0x518], ecx
lea eax, [ebx + ecx]
movzx ecx, byte [esi + 0x178]
test cl, 4
je 0x417ed6
test byte [esi + 0x17a], 0x40
je 0x417ed6
test byte [esi + 0x17b], 8
je 0x417ed6
cmp dword [ebp - 0x4d8], 1
je 0x417edb
mov dword [esi + 0x44], eax
jmp 0x417f0d
mov eax, dword [ebp - 0x518]
lea eax, [ebx + eax - 2]
mov dword [esi + 0x44], eax
jmp 0x417f0d
push 0x89c
push str.for_wseq_lis.c
push 2
push 8
call fcn.0040b430
add esp, 0x10
movzx ecx, byte [esi + 0x178]
mov edx, dword [esi + 0x40]
mov ebx, dword [esi + 0x3c]
test cl, 4
je 0x417f31
test byte [esi + 0x17a], 0x40
je 0x417f31
test byte [esi + 0x17b], 8
je 0x417f31
cmp byte [esi + 0x166], 1
je 0x419123
movsx ecx, byte [esi + 0x168]
cmp ecx, 2
jne 0x417f58
movsx eax, byte [esi + 0x166]
cmp eax, 7
je 0x417f7c
cmp eax, 6
je 0x417f7c
cmp eax, 8
je 0x417f7c
dec dword [esi + 0x44]
jmp 0x417f7c
cmp ecx, 1
jne 0x417f7c
movsx eax, byte [esi + 0x166]
cmp eax, 7
je 0x417f76
cmp eax, 6
je 0x417f76
cmp eax, 8
je 0x417f76
dec dword [esi + 0x44]
add ebx, 5
mov dword [esi + 0x3c], ebx
add dword [esi + 0xa0], 1
mov dword [esi + 0x48], ebx
mov dword [esi + 0x4c], 0
adc dword [esi + 0xa4], 0
and byte [esi + 0x17f], 0xfb
movzx eax, word [esi + 0x160]
test edx, edx
je 0x417fac
sub edx, ebx
add edx, eax
jmp 0x417fb3
sub eax, ebx
mov edx, eax
add edx, dword [esi + 0x38]
cmp ecx, 1
lea ebx, [edx - 1]
je 0x417fbd
mov ebx, edx
test edi, edi
jne 0x417fd5
cmp ebx, dword [ebp - 0x43c]
jge 0x417fd5
mov edx, dword [ebp - 4]
movzx edx, byte [edx + 0x2a]
jmp 0x417ca9
mov ecx, dword [ebp - 4]
mov dword [ebp - 0x2c], edi
mov dword [ebp - 0x28], ebx
movzx ecx, byte [ecx + 0x2a]
mov ebx, dword [ebp - 0x468]
mov edi, dword [ebp - 0x444]
mov dword [ebp - 0x1b8], ecx
cmp dword [ebp - 0x2c], 0
jne 0x418f5a
test byte [ebp - 0x1b8], 0x10
je 0x418065
test byte [esi + 0x178], 2
je 0x418019
cmp dword [ebp - 0x460], 0
jne 0x418056
cmp dword [ebp - 0x28], 1
jle 0x41804b
mov ecx, dword [esi + 0x3c]
mov eax, dword [ebp - 0x28]
mov byte [ecx], 0x20
cmp byte [esi + 0x168], 1
lea ecx, [eax - 1]
je 0x418036
mov eax, ecx
mov ecx, dword [ebp - 4]
inc dword [esi + 0x3c]
mov dword [ebp - 0x28], eax
movzx ecx, byte [ecx + 0x2a]
mov dword [ebp - 0x1b8], ecx
jmp 0x418056
je 0x4191f7
xor ecx, ecx
mov dword [ebp - 0x28], ecx
mov ecx, dword [ebp - 4]
mov edx, dword [ebp - 0x1b8]
and edx, 0xffffffef
mov byte [ecx + 0x2a], dl
mov ecx, dword [ebp - 0x28]
cmp ecx, dword [ebp - 0x43c]
jge 0x41840c
push dword [ebp - 0x28]
push dword [ebp - 0x440]
push dword [esi + 0x3c]
call fcn.004cd9d0
add esp, 0xc
mov ecx, dword [ebp - 0x28]
add dword [ebp - 0x440], ecx
sub dword [ebp - 0x43c], ecx
add dword [esi + 0x3c], ecx
movzx ecx, byte [esi + 0x168]
mov dword [ebp - 0x4ec], ecx
movzx ecx, byte [esi + 0x166]
mov dword [ebp - 0x4f0], ecx
test byte [esi + 0x17b], 4
je 0x4180cd
mov byte [esi + 0x168], 3
mov byte [esi + 0x166], 5
jmp 0x4180e2
mov ecx, dword [ebp - 4]
or byte [ecx + 0x2a], 0x10
xor ecx, ecx
mov dword [esi + 0x130], ecx
mov dword [esi + 0x134], ecx
push esi
call fcn.00435cb0
mov dword [ebp - 0x2c], eax
add esp, 4
mov ecx, dword [ebp - 0x4ec]
mov byte [esi + 0x168], cl
mov ecx, dword [ebp - 0x4f0]
mov byte [esi + 0x166], cl
cmp dword [ebp - 0x2c], 0
je 0x41812c
mov edx, dword [ebp - 4]
mov ecx, eax
mov dword [edx + 0x14], ecx
movsx eax, byte [esi + 0x168]
mov edx, dword [esi + 0x40]
mov ecx, dword [esi + 0x3c]
mov dword [ebp - 0x4f4], eax
jmp 0x418365
push 0
push esi
call fcn.00437060
add esp, 8
test eax, eax
jne 0x419172
movsx ecx, byte [esi + 0x166]
mov dword [ebp - 0x520], ecx
lea ecx, [ecx - 1]
cmp ecx, 7
ja case.default.0x418158
jmp dword [ecx*4 + 0x4e9ea0]
mov edx, dword [esi + 0x40]
test edx, edx
je 0x41816c
mov ecx, edx
mov eax, edx
jmp 0x418171
mov ecx, dword [esi + 0x38]
mov eax, ecx
mov dword [esi + 0x3c], eax
mov eax, dword [esi + 0x100]
lea eax, [ecx + eax - 1]
mov dword [esi + 0x44], eax
movzx eax, byte [esi + 0x178]
mov dword [ebp - 0x524], eax
jmp 0x4182c9
mov edx, dword [esi + 0x18]
test edx, edx
je 0x41912f
test byte [edx + 0x44], 2
je 0x4181d3
mov ecx, 0x2c
mov dword [edx + 0x38], ecx
mov edx, dword [esi + 0x18]
mov dword [edx + 0x3c], ecx
mov edx, dword [esi + 0x64]
test edx, edx
je 0x4181c1
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [esi + 0x64], ecx
mov eax, 0x2c
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
mov edx, 0x2c
push edx
movzx ecx, byte [esi + 0x17c]
push edx
and ecx, 7
push ecx
push 0xffffffffffffffff
push esi
call fcn.0043da80
add esp, 0x14
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
mov edx, dword [esi + 0x40]
test edx, edx
je 0x418209
lea ecx, [edx + 4]
jmp 0x41820f
mov ecx, dword [esi + 0x38]
add ecx, 4
mov eax, dword [esi + 0x100]
mov dword [esi + 0x3c], ecx
lea eax, [ecx + eax - 8]
mov dword [esi + 0x44], eax
movzx eax, byte [esi + 0x178]
mov dword [ebp - 0x524], eax
jmp 0x4182c9
mov edx, dword [esi + 0x40]
test edx, edx
je 0x41823e
mov ecx, edx
mov eax, edx
jmp 0x418243
mov ecx, dword [esi + 0x38]
mov eax, ecx
mov dword [esi + 0x3c], eax
mov eax, dword [esi + 0x100]
mov dword [ebp - 0x790], eax
add eax, ecx
mov dword [ebp - 0x78c], eax
movzx eax, byte [esi + 0x178]
test al, 4
mov dword [ebp - 0x524], eax
je 0x418286
test byte [esi + 0x17a], 0x40
je 0x418286
test byte [esi + 0x17b], 8
je 0x418286
cmp dword [ebp - 0x520], 1
je 0x418291
mov eax, dword [ebp - 0x78c]
mov dword [esi + 0x44], eax
jmp 0x4182c9
mov eax, dword [ebp - 0x790]
lea eax, [ecx + eax - 2]
mov dword [esi + 0x44], eax
jmp 0x4182c9
push 0x8c5
push str.for_wseq_lis.c
push 2
push 8
call fcn.0040b430
add esp, 0x10
movzx ecx, byte [esi + 0x178]
mov dword [ebp - 0x524], ecx
mov edx, dword [esi + 0x40]
mov ecx, dword [esi + 0x3c]
test byte [ebp - 0x524], 4
je 0x4182f1
test byte [esi + 0x17a], 0x40
je 0x4182f1
test byte [esi + 0x17b], 8
je 0x4182f1
cmp byte [esi + 0x166], 1
je 0x41914e
movsx eax, byte [esi + 0x168]
cmp eax, 2
mov dword [ebp - 0x4f4], eax
jne 0x41831e
movsx eax, byte [esi + 0x166]
cmp eax, 7
je 0x418346
cmp eax, 6
je 0x418346
cmp eax, 8
je 0x418346
dec dword [esi + 0x44]
jmp 0x418346
cmp dword [ebp - 0x4f4], 1
jne 0x418346
movsx eax, byte [esi + 0x166]
cmp eax, 7
je 0x418340
cmp eax, 6
je 0x418340
cmp eax, 8
je 0x418340
dec dword [esi + 0x44]
add ecx, 5
mov dword [esi + 0x3c], ecx
add dword [esi + 0xa0], 1
mov dword [esi + 0x48], ecx
mov dword [esi + 0x4c], 0
adc dword [esi + 0xa4], 0
and byte [esi + 0x17f], 0xfb
movzx eax, word [esi + 0x160]
test edx, edx
je 0x418376
sub edx, ecx
add edx, eax
jmp 0x41837d
sub eax, ecx
mov edx, eax
add edx, dword [esi + 0x38]
cmp dword [ebp - 0x4f4], 1
lea eax, [edx - 1]
je 0x41838b
mov eax, edx
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 4]
movzx edx, byte [eax + 0x2a]
test dl, 0x10
mov dword [ebp - 0x4f8], edx
je 0x41840f
test byte [esi + 0x178], 2
je 0x4183b2
cmp dword [ebp - 0x460], 0
jne 0x4183f8
mov eax, dword [ebp - 0x28]
cmp eax, dword [ebp - 0x43c]
jle 0x4183f8
cmp dword [ebp - 0x28], 1
jle 0x4183ed
mov byte [ecx], 0x20
xor edx, edx
cmp byte [esi + 0x168], 1
mov ecx, eax
sete dl
inc dword [esi + 0x3c]
lea ecx, [ecx + edx - 1]
mov dword [ebp - 0x28], ecx
mov ecx, dword [ebp - 4]
movzx ecx, byte [ecx + 0x2a]
mov dword [ebp - 0x4f8], ecx
jmp 0x4183f8
je 0x419160
xor ecx, ecx
mov dword [ebp - 0x28], ecx
mov ecx, dword [ebp - 4]
mov edx, dword [ebp - 0x4f8]
and edx, 0xffffffef
mov byte [ecx + 0x2a], dl
mov ecx, dword [esi + 0x3c]
jmp 0x41840f
mov ecx, dword [esi + 0x3c]
push dword [ebp - 0x43c]
push dword [ebp - 0x440]
push ecx
call fcn.004cd9d0
add esp, 0xc
mov ecx, dword [ebp - 0x43c]
add dword [esi + 0x3c], ecx
sub dword [ebp - 0x28], ecx
mov ecx, dword [ebp - 0x464]
test ecx, ecx
je 0x418450
push ecx
call fcn.00431ee0
mov dword [ebp - 0x2c], eax
add esp, 4
cmp dword [ebp - 0x2c], 0
jne 0x4177a6
mov ecx, dword [ebp - 0x38]
mov dword [esi + 0x134], ecx
mov ecx, dword [ebp - 4]
movzx ecx, byte [ecx + 0x2a]
mov dword [ebp - 0x1b8], ecx
jmp 0x418f5a
mov eax, esi
lea ecx, [ebp - 0x4d0]
mov dword [esp + 0xc], ecx
lea edx, [ebp - 0x1c8]
lea ecx, [ebp - 0x2a0]
call fcn.0041a400
mov dword [ebp - 0x2c], eax
mov ecx, dword [ebp - 4]
movzx ecx, byte [ecx + 0x2a]
mov dword [ebp - 0x1b8], ecx
jmp 0x418f5a
movzx eax, byte [esi + 0x183]
test eax, 0x80
mov edx, dword [ebp - 0x24]
je 0x4184b3
mov edx, 1
mov dword [ebp - 0x24], edx
cmp ecx, dword [ebp - 0x28]
jle 0x4187aa
movzx ecx, byte [esi + 0x168]
mov dword [ebp - 0x1dc], ecx
movzx ecx, byte [esi + 0x166]
mov dword [ebp - 0x1e0], ecx
test byte [esi + 0x17b], 4
je 0x4184f2
mov byte [esi + 0x168], 3
mov byte [esi + 0x166], 5
jmp 0x418507
mov ecx, dword [ebp - 4]
or byte [ecx + 0x2a], 0x10
xor ecx, ecx
mov dword [esi + 0x130], ecx
mov dword [esi + 0x134], ecx
push esi
call fcn.00435cb0
add esp, 4
mov ecx, dword [ebp - 0x1dc]
test eax, eax
mov edx, dword [ebp - 0x1e0]
mov byte [esi + 0x168], cl
mov byte [esi + 0x166], dl
je 0x41854a
mov ecx, dword [ebp - 4]
mov dword [ecx + 0x14], eax
movsx eax, byte [esi + 0x168]
mov ecx, dword [esi + 0x40]
mov edx, dword [esi + 0x3c]
mov dword [ebp - 0x1e4], eax
jmp 0x418781
push 0
push esi
call fcn.00437060
add esp, 8
test eax, eax
jne 0x419520
movsx ecx, byte [esi + 0x166]
mov dword [ebp - 0x490], ecx
lea ecx, [ecx - 1]
cmp ecx, 7
ja case.default.0x418576
jmp dword [ecx*4 + 0x4e9ec0]
mov ecx, dword [esi + 0x40]
test ecx, ecx
je 0x41858a
mov edx, ecx
mov eax, ecx
jmp 0x41858f
mov edx, dword [esi + 0x38]
mov eax, edx
mov dword [esi + 0x3c], eax
mov eax, dword [esi + 0x100]
lea eax, [edx + eax - 1]
mov dword [esi + 0x44], eax
movzx eax, byte [esi + 0x178]
mov dword [ebp - 0x4d4], eax
jmp 0x4186e5
mov edx, dword [esi + 0x18]
test edx, edx
je 0x4194c6
test byte [edx + 0x44], 2
je 0x4185f1
mov ecx, 0x2c
mov dword [edx + 0x38], ecx
mov edx, dword [esi + 0x18]
mov dword [edx + 0x3c], ecx
mov edx, dword [esi + 0x64]
test edx, edx
je 0x4185df
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [esi + 0x64], ecx
mov eax, 0x2c
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
mov edx, 0x2c
push edx
movzx ecx, byte [esi + 0x17c]
push edx
and ecx, 7
push ecx
push 0xffffffffffffffff
push esi
call fcn.0043da80
add esp, 0x14
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
mov ecx, dword [esi + 0x40]
test ecx, ecx
je 0x418627
lea edx, [ecx + 4]
jmp 0x41862d
mov edx, dword [esi + 0x38]
add edx, 4
mov eax, dword [esi + 0x100]
mov dword [esi + 0x3c], edx
lea eax, [edx + eax - 8]
mov dword [esi + 0x44], eax
movzx eax, byte [esi + 0x178]
mov dword [ebp - 0x4d4], eax
jmp 0x4186e5
mov ecx, dword [esi + 0x40]
test ecx, ecx
je 0x41865a
mov edx, ecx
jmp 0x41865d
mov edx, dword [esi + 0x38]
mov eax, edx
mov dword [esi + 0x3c], eax
mov eax, dword [esi + 0x100]
mov dword [ebp - 0x510], eax
add eax, edx
mov dword [ebp - 0x50c], eax
movzx eax, byte [esi + 0x178]
test al, 4
mov dword [ebp - 0x4d4], eax
je 0x4186a2
test byte [esi + 0x17a], 0x40
je 0x4186a2
test byte [esi + 0x17b], 8
je 0x4186a2
cmp dword [ebp - 0x490], 1
je 0x4186ad
mov eax, dword [ebp - 0x50c]
mov dword [esi + 0x44], eax
jmp 0x4186e5
mov eax, dword [ebp - 0x510]
lea eax, [edx + eax - 2]
mov dword [esi + 0x44], eax
jmp 0x4186e5
push 0x74c
push str.for_wseq_lis.c
push 2
push 8
call fcn.0040b430
add esp, 0x10
movzx ecx, byte [esi + 0x178]
mov dword [ebp - 0x4d4], ecx
mov ecx, dword [esi + 0x40]
mov edx, dword [esi + 0x3c]
test byte [ebp - 0x4d4], 4
je 0x41870d
test byte [esi + 0x17a], 0x40
je 0x41870d
test byte [esi + 0x17b], 8
je 0x41870d
cmp byte [esi + 0x166], 1
je 0x4194e5
movsx eax, byte [esi + 0x168]
cmp eax, 2
mov dword [ebp - 0x1e4], eax
jne 0x41873a
movsx eax, byte [esi + 0x166]
cmp eax, 7
je 0x418762
cmp eax, 6
je 0x418762
cmp eax, 8
je 0x418762
dec dword [esi + 0x44]
jmp 0x418762
cmp dword [ebp - 0x1e4], 1
jne 0x418762
movsx eax, byte [esi + 0x166]
cmp eax, 7
je 0x41875c
cmp eax, 6
je 0x41875c
cmp eax, 8
je 0x41875c
dec dword [esi + 0x44]
add edx, 5
mov dword [esi + 0x3c], edx
add dword [esi + 0xa0], 1
mov dword [esi + 0x48], edx
mov dword [esi + 0x4c], 0
adc dword [esi + 0xa4], 0
and byte [esi + 0x17f], 0xfb
movzx eax, word [esi + 0x160]
test ecx, ecx
je 0x418792
sub ecx, edx
add ecx, eax
jmp 0x418799
sub eax, edx
mov ecx, eax
add ecx, dword [esi + 0x38]
cmp dword [ebp - 0x1e4], 1
lea eax, [ecx - 1]
je 0x4187a7
mov eax, ecx
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x24], 0
je 0x4187c0
or byte [ebp - 0x1fc], 0x40
mov ecx, dword [esi + 0x3c]
inc ecx
mov dword [esi + 0x3c], ecx
jmp 0x4187c3
mov ecx, dword [esi + 0x3c]
push ecx
lea ecx, [ebp - 0x2a0]
push ecx
lea eax, [ebp - 0x1c8]
push eax
call fcn.00441b40
mov dword [ebp - 0x2c], eax
add esp, 0xc
cmp dword [ebp - 0x2c], 0
je 0x418812
cmp dword [ebp - 0x2c], 0x3f
jne 0x41880c
test byte [esi + 0x17f], 8
jne 0x418805
mov ecx, dword [ebp - 4]
mov dword [ebp - 0x2c], 0
mov dword [ecx + 0x14], 0x3f
jmp 0x418812
xor ecx, ecx
mov dword [ebp - 0x2c], ecx
jmp 0x418812
cmp dword [ebp - 0x2c], 0x3d
je 0x418863
mov ecx, dword [ebp - 0x38]
mov dword [esi + 0x134], ecx
cmp dword [ebp - 0x24], 0
je 0x418cb5
mov ecx, dword [esi + 0x3c]
xor edx, edx
cmp byte [ecx], 0x20
je 0x41884e
mov eax, dword [ebp - 0x210]
mov dword [ebp - 0x34], esi
cmp edx, eax
jge 0x4194f7
inc edx
lea esi, [ecx + edx]
cmp byte [esi], 0x20
jne 0x418838
mov ecx, esi
mov esi, dword [ebp - 0x34]
mov dword [esi + 0x3c], ecx
mov ecx, dword [ebp - 4]
movzx ecx, byte [ecx + 0x2a]
mov dword [ebp - 0x1b8], ecx
jmp 0x418f5a
mov edx, dword [esi + 0x18]
test edx, edx
je 0x419501
test byte [edx + 0x44], 2
je 0x4188a3
mov ecx, 0x3d
mov dword [edx + 0x38], ecx
mov edx, dword [esi + 0x18]
mov dword [edx + 0x3c], ecx
mov edx, dword [esi + 0x64]
test edx, edx
je 0x418891
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [esi + 0x64], ecx
mov eax, 0x3d
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
mov edx, 0x3d
push edx
movzx ecx, byte [esi + 0x17c]
push edx
and ecx, 7
push ecx
push 0xffffffffffffffff
push esi
call fcn.0043da80
add esp, 0x14
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
mov edx, dword [esi + 0x18]
test edx, edx
je 0x4195a5
test byte [edx + 0x44], 2
je 0x41890d
mov ecx, 0x26
mov dword [edx + 0x38], ecx
mov edx, dword [esi + 0x18]
mov dword [edx + 0x3c], ecx
mov edx, dword [esi + 0x64]
test edx, edx
je 0x4188fb
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [esi + 0x64], ecx
mov eax, 0x26
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
mov edx, 0x26
push edx
movzx ecx, byte [esi + 0x17c]
push edx
and ecx, 7
push ecx
push 0xffffffffffffffff
push esi
call fcn.0043da80
add esp, 0x14
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
movzx eax, byte [esi + 0x183]
test eax, 0x80
mov edx, dword [ebp - 0x24]
je 0x41894d
mov edx, 1
mov dword [ebp - 0x24], edx
cmp ecx, dword [ebp - 0x28]
jle 0x418c6e
movzx ecx, byte [esi + 0x168]
mov dword [ebp - 0x1d4], ecx
movzx ecx, byte [esi + 0x166]
mov dword [ebp - 0x1d0], ecx
test byte [esi + 0x17b], 4
je 0x41898c
mov byte [esi + 0x168], 3
mov byte [esi + 0x166], 5
jmp 0x4189a1
mov ecx, dword [ebp - 4]
or byte [ecx + 0x2a], 0x10
xor ecx, ecx
mov dword [esi + 0x130], ecx
mov dword [esi + 0x134], ecx
push esi
call fcn.00435cb0
add esp, 4
mov ecx, dword [ebp - 0x1d4]
test eax, eax
mov edx, dword [ebp - 0x1d0]
mov byte [esi + 0x168], cl
mov byte [esi + 0x166], dl
je 0x4189e4
mov ecx, dword [ebp - 4]
mov dword [ecx + 0x14], eax
mov eax, dword [esi + 0x3c]
mov ecx, dword [esi + 0x40]
mov dword [ebp - 0x1d8], eax
movsx edx, byte [esi + 0x168]
jmp 0x418c41
push 0
push esi
call fcn.00437060
add esp, 8
test eax, eax
jne 0x4195ef
movsx ecx, byte [esi + 0x166]
mov dword [ebp - 0x44c], ecx
lea ecx, [ecx - 1]
cmp ecx, 7
ja case.default.0x418a10
jmp dword [ecx*4 + 0x4e9ee0]
mov ecx, dword [esi + 0x40]
test ecx, ecx
je 0x418a28
mov dword [ebp - 0x1d8], ecx
mov eax, ecx
jmp 0x418a31
mov eax, dword [esi + 0x38]
mov dword [ebp - 0x1d8], eax
mov dword [esi + 0x3c], eax
mov edx, dword [esi + 0x100]
lea eax, [eax + edx - 1]
movzx edx, byte [esi + 0x178]
mov dword [esi + 0x44], eax
mov dword [ebp - 0x454], edx
jmp 0x418b9d
mov edx, dword [esi + 0x18]
test edx, edx
je 0x4195c4
test byte [edx + 0x44], 2
je 0x418a93
mov ecx, 0x2c
mov dword [edx + 0x38], ecx
mov edx, dword [esi + 0x18]
mov dword [edx + 0x3c], ecx
mov edx, dword [esi + 0x64]
test edx, edx
je 0x418a81
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [esi + 0x64], ecx
mov eax, 0x2c
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
mov edx, 0x2c
push edx
movzx ecx, byte [esi + 0x17c]
push edx
and ecx, 7
push ecx
push 0xffffffffffffffff
push esi
call fcn.0043da80
add esp, 0x14
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
mov ecx, dword [esi + 0x40]
test ecx, ecx
je 0x418acf
lea eax, [ecx + 4]
mov dword [ebp - 0x1d8], eax
jmp 0x418adb
mov eax, dword [esi + 0x38]
add eax, 4
mov dword [ebp - 0x1d8], eax
mov edx, dword [esi + 0x100]
mov dword [esi + 0x3c], eax
lea eax, [eax + edx - 8]
movzx edx, byte [esi + 0x178]
mov dword [esi + 0x44], eax
mov dword [ebp - 0x454], edx
jmp 0x418b9d
mov ecx, dword [esi + 0x40]
test ecx, ecx
je 0x418b0e
mov dword [ebp - 0x1d8], ecx
mov eax, ecx
jmp 0x418b17
mov eax, dword [esi + 0x38]
mov dword [ebp - 0x1d8], eax
mov dword [esi + 0x3c], eax
mov edx, dword [esi + 0x100]
mov dword [ebp - 0x4e8], edx
add edx, eax
movzx eax, byte [esi + 0x178]
mov dword [ebp - 0x454], eax
test al, 4
je 0x418b54
test byte [esi + 0x17a], 0x40
je 0x418b54
test byte [esi + 0x17b], 8
je 0x418b54
cmp dword [ebp - 0x44c], 1
je 0x418b59
mov dword [esi + 0x44], edx
jmp 0x418b9d
mov edx, dword [ebp - 0x4e8]
mov eax, dword [ebp - 0x1d8]
lea eax, [eax + edx - 2]
mov dword [esi + 0x44], eax
jmp 0x418b9d
push 0x703
push str.for_wseq_lis.c
push 2
push 8
call fcn.0040b430
add esp, 0x10
movzx ecx, byte [esi + 0x178]
mov eax, dword [esi + 0x3c]
mov dword [ebp - 0x454], ecx
mov ecx, dword [esi + 0x40]
mov dword [ebp - 0x1d8], eax
test byte [ebp - 0x454], 4
je 0x418bc5
test byte [esi + 0x17a], 0x40
je 0x418bc5
test byte [esi + 0x17b], 8
je 0x418bc5
cmp byte [esi + 0x166], 1
je 0x4195e3
movsx edx, byte [esi + 0x168]
cmp edx, 2
jne 0x418bec
movsx eax, byte [esi + 0x166]
cmp eax, 7
je 0x418c1c
cmp eax, 6
je 0x418c1c
cmp eax, 8
je 0x418c1c
dec dword [esi + 0x44]
jmp 0x418c1c
cmp edx, 1
jne 0x418c1c
movsx eax, byte [esi + 0x166]
cmp eax, 7
je 0x418c0a
cmp eax, 6
je 0x418c0a
cmp eax, 8
je 0x418c0a
dec dword [esi + 0x44]
mov eax, dword [ebp - 0x1d8]
add eax, 5
mov dword [ebp - 0x1d8], eax
mov dword [esi + 0x3c], eax
add dword [esi + 0xa0], 1
mov dword [esi + 0x4c], 0
mov eax, dword [ebp - 0x1d8]
mov dword [esi + 0x48], eax
adc dword [esi + 0xa4], 0
and byte [esi + 0x17f], 0xfb
movzx eax, word [esi + 0x160]
test ecx, ecx
je 0x418c56
sub ecx, dword [ebp - 0x1d8]
add ecx, eax
jmp 0x418c61
sub eax, dword [ebp - 0x1d8]
mov ecx, eax
add ecx, dword [esi + 0x38]
cmp edx, 1
lea eax, [ecx - 1]
je 0x418c6b
mov eax, ecx
mov dword [ebp - 0x28], eax
mov ecx, 1
lea eax, [ebp - 0x1c8]
mov word [ebp - 0x208], cx
lea ecx, [ebp - 0x2a0]
push dword [esi + 0x3c]
push ecx
push eax
call fcn.00441b40
mov dword [ebp - 0x2c], eax
add esp, 0xc
cmp dword [ebp - 0x2c], 0
je 0x418ca6
cmp dword [ebp - 0x2c], 0x3f
je 0x419bfa
mov ecx, dword [ebp - 0x38]
mov dword [esi + 0x134], ecx
cmp dword [ebp - 0x24], 0
jne 0x418cd0
mov ecx, dword [ebp - 0x210]
add dword [esi + 0x3c], ecx
mov ecx, dword [ebp - 4]
movzx ecx, byte [ecx + 0x2a]
mov dword [ebp - 0x1b8], ecx
jmp 0x418f5a
mov eax, dword [esi + 0x3c]
mov ecx, dword [ebp - 0x210]
mov dword [ebp - 0x1e8], ecx
movsx ecx, byte [eax]
mov dword [ebp - 0x1f4], ecx
xor ecx, ecx
mov dword [ebp - 0x1f0], eax
cmp dword [ebp - 0x1f4], 0x20
je 0x418d07
mov edx, dword [ebp - 0x1f4]
mov dword [ebp - 0x450], edx
jmp 0x418d2d
mov dword [ebp - 0x34], esi
mov esi, eax
mov eax, dword [ebp - 0x1e8]
cmp ecx, eax
jge 0x419bec
inc ecx
movsx edx, byte [ecx + esi]
cmp edx, 0x20
je 0x418d12
mov dword [ebp - 0x450], edx
mov esi, dword [ebp - 0x34]
mov dword [ebp - 0x1ec], ecx
cmp dword [ebp - 0x450], 0x20
je 0x418d53
mov eax, dword [ebp - 0x1f0]
mov edx, dword [ebp - 0x1e8]
cmp ecx, edx
jge 0x418d53
inc ecx
cmp byte [ecx + eax], 0x20
jne 0x418d48
mov eax, dword [ebp - 0x1e8]
cmp eax, dword [ebp - 0x1ec]
je 0x418f3e
cmp dword [ebp - 0x1ec], 0
jne 0x418e2b
mov edx, eax
cmp ecx, edx
mov ecx, dword [ebp - 0x1f0]
lea eax, [edx + 1]
jne 0x418d83
mov edx, eax
mov dword [ebp - 0x1e8], edx
cmp edx, 1
mov byte [ecx], 0x20
jle 0x418f35
mov eax, edx
lea ecx, [eax - 1]
mov dword [ebp - 0x48c], ecx
shr ecx, 0x1f
lea ecx, [ecx + eax - 1]
sar ecx, 1
test ecx, ecx
jbe 0x419674
xor edx, edx
mov dword [ebp - 0x444], edi
mov dword [ebp - 0x34], esi
mov esi, edx
mov edi, dword [ebp - 0x1f0]
mov eax, dword [ebp - 0x1f4]
movzx edx, byte [edi + esi*2 + 1]
mov byte [edi + esi*2 + 1], al
movzx eax, byte [edi + esi*2 + 2]
mov byte [edi + esi*2 + 2], dl
inc esi
cmp esi, ecx
jb 0x418dca
mov edx, esi
mov dword [ebp - 0x1f4], eax
lea ecx, [edx + edx + 1]
mov edi, dword [ebp - 0x444]
mov esi, dword [ebp - 0x34]
mov dword [ebp - 0x488], ecx
mov ecx, dword [ebp - 0x488]
lea ecx, [ecx - 1]
cmp ecx, dword [ebp - 0x48c]
jae 0x418f35
mov eax, dword [ebp - 0x1f0]
mov ecx, dword [ebp - 0x488]
mov edx, dword [ebp - 0x1f4]
mov byte [ecx + eax], dl
jmp 0x418f35
cmp dword [ebp - 0x1ec], 1
je 0x418f3e
mov ecx, dword [ebp - 0x1f0]
mov byte [ecx], 0x20
mov ecx, eax
cmp ecx, dword [ebp - 0x1ec]
jle 0x418f2b
sub eax, dword [ebp - 0x1ec]
mov ecx, eax
shr ecx, 0x1f
add ecx, eax
sar ecx, 1
mov dword [ebp - 0x480], eax
test ecx, ecx
jbe 0x419683
mov eax, dword [ebp - 0x1f0]
mov edx, dword [ebp - 0x1ec]
mov dword [ebp - 0x484], 0
mov dword [ebp - 0x444], edi
mov dword [ebp - 0x468], ebx
add edx, eax
mov dword [ebp - 0x34], esi
mov esi, eax
mov edi, dword [ebp - 0x484]
mov eax, 0x20
movzx ebx, byte [edx + edi*2]
mov byte [esi + edi*2 + 1], bl
movzx ebx, byte [edx + edi*2 + 1]
mov byte [edx + edi*2], al
mov byte [esi + edi*2 + 2], bl
lea ebx, [edi + edi + 3]
mov byte [edx + edi*2 + 1], al
inc edi
cmp edi, ecx
jb 0x418ea0
mov dword [ebp - 0x484], edi
mov ecx, edi
mov dword [ebp - 0x1e8], ebx
mov ebx, dword [ebp - 0x468]
mov edi, dword [ebp - 0x444]
lea ecx, [ecx + ecx + 1]
mov esi, dword [ebp - 0x34]
mov dword [ebp - 0x47c], ecx
lea ecx, [ecx - 1]
cmp ecx, dword [ebp - 0x480]
jae 0x418f35
mov ecx, dword [ebp - 0x1f0]
mov dword [ebp - 0x468], ebx
mov ebx, dword [ebp - 0x1ec]
add ebx, ecx
mov eax, dword [ebp - 0x47c]
movzx edx, byte [ebx + eax - 1]
mov byte [ecx + eax], dl
lea ecx, [eax + 1]
mov byte [ebx + eax - 1], 0x20
mov dword [ebp - 0x1e8], ecx
mov ebx, dword [ebp - 0x468]
jmp 0x418f35
mov dword [ebp - 0x1e8], 1
mov ecx, dword [esi + 0x3c]
mov dword [ebp - 0x1f0], ecx
mov ecx, dword [ebp - 0x1f0]
add ecx, dword [ebp - 0x1e8]
mov dword [esi + 0x3c], ecx
mov ecx, dword [ebp - 4]
movzx ecx, byte [ecx + 0x2a]
mov dword [ebp - 0x1b8], ecx
test byte [ebp - 0x1b8], 0x10
je 0x418f72
mov ecx, dword [ebp - 4]
mov edx, dword [ebp - 0x1b8]
and edx, 0xffffffef
mov byte [ecx + 0x2a], dl
cmp dword [ebp - 0x2c], 0
jne 0x419699
cmp dword [ebp - 0x38], 0x38
je 0x416e6d
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x38]
movsx ecx, byte [ecx + eax*4]
sub dword [ebp - 0x28], ecx
jmp 0x416e6d
mov edx, dword [esi + 0x18]
test edx, edx
je 0x418ffe
test byte [edx + 0x44], 2
je 0x418fd4
mov ecx, 0x42
mov dword [edx + 0x38], ecx
mov edx, dword [esi + 0x18]
mov dword [edx + 0x3c], ecx
mov edx, dword [esi + 0x64]
test edx, edx
je 0x418fc2
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [esi + 0x64], ecx
mov eax, 0x42
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
mov edx, 0x42
push edx
movzx ecx, byte [esi + 0x17c]
push edx
and ecx, 7
push ecx
push 0xffffffffffffffff
push esi
call fcn.0043da80
add esp, 0x14
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
push esi
mov edx, 0x42
push edx
push edx
push 1
call fcn.00409370
add esp, 0x10
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
push esi
mov edx, 0x2c
push edx
push edx
push 1
call fcn.00409370
add esp, 0x10
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
movsx eax, byte [esi + 0x168]
mov dword [ebp - 0x4e4], eax
jmp 0x4178fc
mov edx, dword [esi + 0x18]
test edx, edx
je 0x4190b4
test byte [edx + 0x44], 2
je 0x41908a
mov ecx, 0x26
mov dword [edx + 0x38], ecx
mov edx, dword [esi + 0x18]
mov dword [edx + 0x3c], ecx
mov edx, dword [esi + 0x64]
test edx, edx
je 0x419078
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [esi + 0x64], ecx
mov eax, 0x26
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
mov edx, 0x26
push edx
movzx ecx, byte [esi + 0x17c]
push edx
and ecx, 7
push ecx
push 0xffffffffffffffff
push esi
call fcn.0043da80
add esp, 0x14
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
push esi
mov edx, 0x26
push edx
push edx
push 1
call fcn.00409370
add esp, 0x10
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
push esi
mov edx, 0x2c
push edx
push edx
push 1
call fcn.00409370
add esp, 0x10
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
movsx eax, byte [esi + 0x168]
mov dword [ebp - 0x504], eax
jmp 0x417c31
push esi
mov edx, 0x2c
push edx
push edx
push 1
call fcn.00409370
add esp, 0x10
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
movsx ecx, byte [esi + 0x168]
jmp 0x417f7c
push esi
mov edx, 0x2c
push edx
push edx
push 1
call fcn.00409370
add esp, 0x10
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
movsx eax, byte [esi + 0x168]
mov dword [ebp - 0x4f4], eax
jmp 0x418346
cmp dword [ebp - 0x4f4], 1
je 0x4183c3
jmp 0x4183f3
mov edx, dword [esi + 0x18]
test edx, edx
je 0x4191d8
test byte [edx + 0x44], 2
je 0x4191ae
mov ecx, 0x26
mov dword [edx + 0x38], ecx
mov edx, dword [esi + 0x18]
mov dword [edx + 0x3c], ecx
mov edx, dword [esi + 0x64]
test edx, edx
je 0x41919c
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [esi + 0x64], ecx
mov eax, 0x26
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
mov edx, 0x26
push edx
movzx ecx, byte [esi + 0x17c]
push edx
and ecx, 7
push ecx
push 0xffffffffffffffff
push esi
call fcn.0043da80
add esp, 0x14
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
push esi
mov edx, 0x26
push edx
push edx
push 1
call fcn.00409370
add esp, 0x10
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
cmp byte [esi + 0x168], 1
je 0x41801f
jmp 0x418051
mov edx, dword [esi + 0x18]
test edx, edx
je 0x41926f
test byte [edx + 0x44], 2
je 0x419245
mov ecx, 0x26
mov dword [edx + 0x38], ecx
mov edx, dword [esi + 0x18]
mov dword [edx + 0x3c], ecx
mov edx, dword [esi + 0x64]
test edx, edx
je 0x419233
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [esi + 0x64], ecx
mov eax, 0x26
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
mov edx, 0x26
push edx
movzx ecx, byte [esi + 0x17c]
push edx
and ecx, 7
push ecx
push 0xffffffffffffffff
push esi
call fcn.0043da80
add esp, 0x14
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
push esi
mov edx, 0x26
push edx
push edx
push 1
call fcn.00409370
add esp, 0x10
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
cmp byte [esi + 0x168], 1
je 0x417cc5
jmp 0x417ceb
mov edx, dword [esi + 0x18]
test edx, edx
je 0x419306
test byte [edx + 0x44], 2
je 0x4192dc
mov ecx, 0x26
mov dword [edx + 0x38], ecx
mov edx, dword [esi + 0x18]
mov dword [edx + 0x3c], ecx
mov edx, dword [esi + 0x64]
test edx, edx
je 0x4192ca
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [esi + 0x64], ecx
mov eax, 0x26
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
mov edx, 0x26
push edx
movzx ecx, byte [esi + 0x17c]
push edx
and ecx, 7
push ecx
push 0xffffffffffffffff
push esi
call fcn.0043da80
add esp, 0x14
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
push esi
mov edx, 0x26
push edx
push edx
push 1
call fcn.00409370
add esp, 0x10
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
mov edx, dword [esi + 0x18]
test edx, edx
je 0x41938b
test byte [edx + 0x44], 2
je 0x419361
mov ecx, 0x61
mov dword [edx + 0x38], ecx
mov edx, dword [esi + 0x18]
mov dword [edx + 0x3c], ecx
mov edx, dword [esi + 0x64]
test edx, edx
je 0x41934f
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [esi + 0x64], ecx
mov eax, 0x61
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
mov edx, 0x61
push edx
movzx ecx, byte [esi + 0x17c]
push edx
and ecx, 7
push ecx
push 0xffffffffffffffff
push esi
call fcn.0043da80
add esp, 0x14
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
push esi
mov edx, 0x61
push edx
push edx
push 1
call fcn.00409370
add esp, 0x10
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
mov edx, dword [esi + 0x18]
test edx, edx
je 0x419410
test byte [edx + 0x44], 2
je 0x4193e6
mov ecx, 0x61
mov dword [edx + 0x38], ecx
mov edx, dword [esi + 0x18]
mov dword [edx + 0x3c], ecx
mov edx, dword [esi + 0x64]
test edx, edx
je 0x4193d4
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [esi + 0x64], ecx
mov eax, 0x61
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
mov edx, 0x61
push edx
movzx ecx, byte [esi + 0x17c]
push edx
and ecx, 7
push ecx
push 0xffffffffffffffff
push esi
call fcn.0043da80
add esp, 0x14
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
push esi
mov edx, 0x61
push edx
push edx
push 1
call fcn.00409370
add esp, 0x10
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
mov edx, dword [esi + 0x18]
test edx, edx
je 0x419495
test byte [edx + 0x44], 2
je 0x41946b
mov ecx, 0x61
mov dword [edx + 0x38], ecx
mov edx, dword [esi + 0x18]
mov dword [edx + 0x3c], ecx
mov edx, dword [esi + 0x64]
test edx, edx
je 0x419459
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [esi + 0x64], ecx
mov eax, 0x61
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
mov edx, 0x61
push edx
movzx ecx, byte [esi + 0x17c]
push edx
and ecx, 7
push ecx
push 0xffffffffffffffff
push esi
call fcn.0043da80
add esp, 0x14
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
push esi
mov edx, 0x61
push edx
push edx
push 1
call fcn.00409370
add esp, 0x10
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
cmp byte [esi + 0x168], 1
je 0x417425
jmp 0x417455
push esi
mov edx, 0x2c
push edx
push edx
push 1
call fcn.00409370
add esp, 0x10
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
movsx eax, byte [esi + 0x168]
mov dword [ebp - 0x1e4], eax
jmp 0x418762
mov esi, dword [ebp - 0x34]
add ecx, edx
jmp 0x41884e
push esi
mov edx, 0x3d
push edx
push edx
push 1
call fcn.00409370
add esp, 0x10
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
mov edx, dword [esi + 0x18]
test edx, edx
je 0x419586
test byte [edx + 0x44], 2
je 0x41955c
mov ecx, 0x26
mov dword [edx + 0x38], ecx
mov edx, dword [esi + 0x18]
mov dword [edx + 0x3c], ecx
mov edx, dword [esi + 0x64]
test edx, edx
je 0x41954a
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [esi + 0x64], ecx
mov eax, 0x26
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
mov edx, 0x26
push edx
movzx ecx, byte [esi + 0x17c]
push edx
and ecx, 7
push ecx
push 0xffffffffffffffff
push esi
call fcn.0043da80
add esp, 0x14
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
push esi
mov edx, 0x26
push edx
push edx
push 1
call fcn.00409370
add esp, 0x10
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
push esi
mov edx, 0x26
push edx
push edx
push 1
call fcn.00409370
add esp, 0x10
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
push esi
mov edx, 0x2c
push edx
push edx
push 1
call fcn.00409370
add esp, 0x10
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
movsx edx, byte [esi + 0x168]
jmp 0x418c1c
mov edx, dword [esi + 0x18]
test edx, edx
je 0x419655
test byte [edx + 0x44], 2
je 0x41962b
mov ecx, 0x26
mov dword [edx + 0x38], ecx
mov edx, dword [esi + 0x18]
mov dword [edx + 0x3c], ecx
mov edx, dword [esi + 0x64]
test edx, edx
je 0x419619
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [esi + 0x64], ecx
mov eax, 0x26
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
mov edx, 0x26
push edx
movzx ecx, byte [esi + 0x17c]
push edx
and ecx, 7
push ecx
push 0xffffffffffffffff
push esi
call fcn.0043da80
add esp, 0x14
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
push esi
mov edx, 0x26
push edx
push edx
push 1
call fcn.00409370
add esp, 0x10
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
mov dword [ebp - 0x488], 1
jmp 0x418dfc
mov ecx, 1
mov dword [ebp - 0x1e8], ecx
mov dword [ebp - 0x47c], ecx
jmp 0x418ee8
mov eax, dword [ebp - 0x2c]
mov edi, dword [ebp - 4]
mov ecx, dword [edi + 0x14]
test ecx, ecx
je 0x419707
mov edx, dword [esi + 0x18]
test edx, edx
je 0x419b42
test byte [edx + 0x44], 2
je 0x4196e2
mov dword [edx + 0x38], ecx
mov ecx, dword [esi + 0x18]
mov edx, dword [edi + 0x14]
mov dword [ecx + 0x3c], edx
mov edx, dword [esi + 0x64]
test edx, edx
je 0x4196d2
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [esi + 0x64], ecx
mov eax, dword [edi + 0x14]
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
push ecx
movzx edx, byte [esi + 0x17c]
push ecx
and edx, 7
push edx
push 0xffffffffffffffff
push esi
call fcn.0043da80
add esp, 0x14
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
cmp dword [ebp - 0x1c0], 1
jne 0x419b35
cmp dword [esi + 0x130], 0
je 0x41973f
movzx edx, byte [esi + 0x181]
test edx, 0x80
mov dword [esi + 0x130], 0
je 0x41973f
and edx, 0x7f
mov byte [esi + 0x181], dl
movzx edx, word [esi + 0x164]
test edx, edx
jg 0x419b08
mov edx, dword [esi + 0x40]
test edx, edx
mov ecx, dword [esi + 0x4c]
je 0x419bd3
test ecx, ecx
je 0x419764
sub ecx, edx
jmp 0x419769
mov ecx, dword [esi + 0x3c]
sub ecx, edx
movzx edx, byte [edi + 0x2a]
test ecx, ecx
jne 0x419804
test dl, 0x10
je 0x419804
cmp dword [esi + 0x100], 2
jae 0x4197f1
mov edx, dword [esi + 0x18]
test edx, edx
je 0x419b5c
test byte [edx + 0x44], 2
je 0x4197c7
mov ecx, 0x42
mov dword [edx + 0x38], ecx
mov edx, dword [esi + 0x18]
mov dword [edx + 0x3c], ecx
mov edx, dword [esi + 0x64]
test edx, edx
je 0x4197b5
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [esi + 0x64], ecx
mov eax, 0x42
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
mov edx, 0x42
push edx
movzx ecx, byte [esi + 0x17c]
push edx
and ecx, 7
push ecx
push 0xffffffffffffffff
push esi
call fcn.0043da80
add esp, 0x14
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
mov edx, dword [esi + 0x3c]
mov byte [edx], 0x20
inc dword [esi + 0x3c]
movzx edx, byte [edi + 0x2a]
and edx, 0xffffffef
mov byte [edi + 0x2a], dl
movzx ecx, byte [esi + 0x168]
or edx, 0x10
movzx ebx, byte [esi + 0x166]
mov byte [edi + 0x2a], dl
xor edx, edx
push esi
mov dword [ebp - 0x798], ecx
mov dword [esi + 0x130], edx
mov dword [esi + 0x134], edx
call fcn.00435cb0
add esp, 4
mov edx, dword [ebp - 0x798]
test eax, eax
mov ecx, ebx
mov byte [esi + 0x168], dl
mov byte [esi + 0x166], cl
je 0x419855
mov dword [edi + 0x14], eax
jmp 0x419aa3
push 0
push esi
call fcn.00437060
add esp, 8
test eax, eax
je 0x4198ce
mov edx, dword [esi + 0x18]
test edx, edx
je 0x419b7b
test byte [edx + 0x44], 2
je 0x4198a4
mov ecx, 0x26
mov dword [edx + 0x38], ecx
mov edx, dword [esi + 0x18]
mov dword [edx + 0x3c], ecx
mov edx, dword [esi + 0x64]
test edx, edx
je 0x419892
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [esi + 0x64], ecx
mov eax, 0x26
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
mov edx, 0x26
push edx
movzx ecx, byte [esi + 0x17c]
push edx
and ecx, 7
push ecx
push 0xffffffffffffffff
push esi
call fcn.0043da80
add esp, 0x14
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
movsx ecx, byte [esi + 0x166]
lea edx, [ecx - 1]
cmp edx, 7
ja case.default.0x4198e1
jmp dword [edx*4 + 0x4e9f00]
mov ebx, dword [esi + 0x40]
test ebx, ebx
jne 0x4198f2
mov ebx, dword [esi + 0x38]
mov edx, dword [esi + 0x100]
mov dword [esi + 0x3c], ebx
lea ecx, [ebx + edx - 1]
mov dword [esi + 0x44], ecx
movzx edx, byte [esi + 0x178]
jmp 0x419a16
mov edx, dword [esi + 0x18]
test edx, edx
je 0x419b9a
test byte [edx + 0x44], 2
je 0x41994e
mov ecx, 0x2c
mov dword [edx + 0x38], ecx
mov edx, dword [esi + 0x18]
mov dword [edx + 0x3c], ecx
mov edx, dword [esi + 0x64]
test edx, edx
je 0x41993c
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [esi + 0x64], ecx
mov eax, 0x2c
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
mov edx, 0x2c
push edx
movzx ecx, byte [esi + 0x17c]
push edx
and ecx, 7
push ecx
push 0xffffffffffffffff
push esi
call fcn.0043da80
add esp, 0x14
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
mov ebx, dword [esi + 0x40]
test ebx, ebx
je 0x419984
add ebx, 4
jmp 0x41998a
mov ebx, dword [esi + 0x38]
add ebx, 4
mov edx, dword [esi + 0x100]
mov dword [esi + 0x3c], ebx
lea ecx, [ebx + edx - 8]
mov dword [esi + 0x44], ecx
movzx edx, byte [esi + 0x178]
jmp 0x419a16
mov ebx, dword [esi + 0x40]
test ebx, ebx
jne 0x4199ad
mov ebx, dword [esi + 0x38]
mov edx, dword [esi + 0x100]
mov dword [ebp - 0x798], edx
mov dword [esi + 0x3c], ebx
lea eax, [ebx + edx]
movzx edx, byte [esi + 0x178]
test dl, 4
je 0x4199e2
test byte [esi + 0x17a], 0x40
je 0x4199e2
test byte [esi + 0x17b], 8
je 0x4199e2
cmp ecx, 1
je 0x4199e7
mov dword [esi + 0x44], eax
jmp 0x419a16
mov ecx, dword [ebp - 0x798]
lea ecx, [ebx + ecx - 2]
mov dword [esi + 0x44], ecx
jmp 0x419a16
push 0x971
push str.for_wseq_lis.c
push 2
push 8
call fcn.0040b430
add esp, 0x10
movzx edx, byte [esi + 0x178]
mov ebx, dword [esi + 0x3c]
test dl, 4
je 0x419a36
test byte [esi + 0x17a], 0x40
je 0x419a36
test byte [esi + 0x17b], 8
je 0x419a36
cmp byte [esi + 0x166], 1
je 0x419a81
movsx edx, byte [esi + 0x168]
cmp edx, 2
jne 0x419a5d
movsx edx, byte [esi + 0x166]
cmp edx, 7
je 0x419a81
cmp edx, 6
je 0x419a81
cmp edx, 8
je 0x419a81
dec dword [esi + 0x44]
jmp 0x419a81
cmp edx, 1
jne 0x419a81
movsx edx, byte [esi + 0x166]
cmp edx, 7
je 0x419a7b
cmp edx, 6
je 0x419a7b
cmp edx, 8
je 0x419a7b
dec dword [esi + 0x44]
add ebx, 5
mov dword [esi + 0x3c], ebx
add dword [esi + 0xa0], 1
mov dword [esi + 0x48], ebx
mov dword [esi + 0x4c], 0
adc dword [esi + 0xa4], 0
and byte [esi + 0x17f], 0xfb
mov eax, dword [edi + 0x14]
test eax, eax
je 0x419b08
mov edx, dword [esi + 0x18]
test edx, edx
je 0x419bb9
test byte [edx + 0x44], 2
je 0x419ae3
mov dword [edx + 0x38], eax
mov ecx, dword [esi + 0x18]
mov edx, dword [edi + 0x14]
mov dword [ecx + 0x3c], edx
mov edx, dword [esi + 0x64]
test edx, edx
je 0x419ad3
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [esi + 0x64], ecx
mov eax, dword [edi + 0x14]
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
push eax
movzx edx, byte [esi + 0x17c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push esi
call fcn.0043da80
add esp, 0x14
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
push dword [esi + 0x108]
and byte [esi + 0x181], 0x7f
and byte [esi + 0x17c], 0xdc
and byte [esi + 0x17e], 0xf7
call fcn.004325f0
add esp, 4
mov ecx, dword [ebp - 0x18]
mov dword [ecx + 4], 0
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
push esi
push ecx
push ecx
push 1
call fcn.00409370
add esp, 0x10
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
push esi
mov edx, 0x42
push edx
push edx
push 1
call fcn.00409370
add esp, 0x10
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
push esi
mov edx, 0x26
push edx
push edx
push 1
call fcn.00409370
add esp, 0x10
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
push esi
mov edx, 0x2c
push edx
push edx
push 1
call fcn.00409370
add esp, 0x10
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
push esi
push eax
push eax
push 1
call fcn.00409370
add esp, 0x10
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
test ecx, ecx
je 0x419be1
mov edx, dword [esi + 0x38]
sub ecx, edx
jmp 0x419769
mov ecx, dword [esi + 0x3c]
sub ecx, dword [esi + 0x38]
jmp 0x419769
mov esi, dword [ebp - 0x34]
mov dword [ebp - 0x1ec], ecx
jmp 0x418d53
test byte [esi + 0x17f], 8
jne 0x419c19
mov ecx, dword [ebp - 4]
mov dword [ebp - 0x2c], 0
mov dword [ecx + 0x14], 0x3f
jmp 0x418ca6
xor ecx, ecx
mov dword [ebp - 0x2c], ecx
jmp 0x418ca6
mov edx, dword [esi + 0x18]
test edx, edx
je 0x419c89
test byte [edx + 0x44], 2
je 0x419c5f
mov ecx, 0x30
mov dword [edx + 0x38], ecx
mov edx, dword [esi + 0x18]
mov dword [edx + 0x3c], ecx
mov edx, dword [esi + 0x64]
test edx, edx
je 0x419c4d
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [esi + 0x64], ecx
mov eax, 0x30
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
mov edx, 0x30
push edx
movzx ecx, byte [esi + 0x17c]
push edx
and ecx, 7
push ecx
push 0xffffffffffffffff
push esi
call fcn.0043da80
add esp, 0x14
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
push esi
mov edx, 0x30
push edx
push edx
push 1
call fcn.00409370
add esp, 0x10
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
mov ecx, dword [esi + 0x108]
inc word [esi + 0x164]
mov dword [ebp - 0x430], ecx
lea ecx, [ebp - 0x478]
mov dword [ebp - 0x478], 0x5453494c
mov dword [ebp - 0x474], 0x45524944
mov dword [ebp - 0x470], 0x44455443
mov byte [ebp - 0x46c], 0
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x419cfd
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x419ce8
dec eax
xor edx, edx
lea ecx, [ebp - 0x428]
push ecx
push edx
push 0x39
mov dword [ebp - 0x424], eax
mov dword [ebp - 0x42c], edx
mov dword [ebp - 0x6b0], edx
mov dword [ebp - 0x6ac], edx
mov dword [ebp - 0x6a8], edx
mov dword [ebp - 0x6a4], edx
mov dword [ebp - 0x6a0], 1
mov dword [ebp - 0x69c], edx
mov dword [ebp - 0x698], edx
mov dword [ebp - 0x694], edx
mov dword [ebp - 0x690], edx
call fcn.00431e20
add esp, 0xc
test eax, eax
jne 0x4177a6
mov eax, dword [ebp - 0x428]
mov ecx, dword [esi + 0x84]
mov dword [eax], ecx
mov edx, dword [ebp - 0x428]
mov ecx, dword [esi + 0x78]
mov dword [edx + 4], ecx
mov eax, dword [ebp - 0x428]
mov ecx, dword [esi + 0xfc]
mov dword [eax + 0x18], ecx
mov edx, dword [ebp - 0x428]
mov ecx, dword [esi + 0x120]
mov dword [edx + 0x1c], ecx
mov ecx, dword [ebp - 0x428]
movzx edx, byte [esi + 0x166]
mov byte [ecx + 0x2c], dl
mov ecx, dword [ebp - 0x428]
movzx edx, byte [esi + 0x167]
mov byte [ecx + 0x2d], dl
mov ecx, dword [ebp - 0x428]
movzx edx, byte [esi + 0x168]
mov byte [ecx + 0x2e], dl
mov ecx, dword [ebp - 0x428]
movzx edx, byte [esi + 0x16b]
mov byte [ecx + 0x2f], dl
mov ecx, dword [ebp - 0x428]
movzx edx, byte [esi + 0x16c]
mov byte [ecx + 0x30], dl
mov ecx, dword [ebp - 0x428]
movzx edx, byte [esi + 0x175]
mov byte [ecx + 0x31], dl
mov ecx, dword [ebp - 0x428]
movzx edx, byte [esi + 0x176]
mov byte [ecx + 0x32], dl
mov ecx, dword [ebp - 0x428]
movzx edx, byte [esi + 0x173]
mov byte [ecx + 0x33], dl
mov ecx, dword [ebp - 0x428]
movzx edx, byte [esi + 0x174]
mov byte [ecx + 0x34], dl
mov eax, dword [ebp - 0x428]
movzx ecx, byte [esi + 0x179]
shr ecx, 5
movzx edx, byte [eax + 0x35]
and ecx, 1
and edx, 0xfffffffe
or edx, ecx
mov byte [eax + 0x35], dl
mov eax, dword [ebp - 0x428]
movzx ecx, byte [esi + 0x17a]
shr ecx, 2
and ecx, 1
movzx edx, byte [eax + 0x35]
add ecx, ecx
and edx, 0xfffffffd
or edx, ecx
mov byte [eax + 0x35], dl
mov eax, dword [ebp - 0x428]
movzx ecx, byte [esi + 0x17b]
shr ecx, 5
and ecx, 1
movzx edx, byte [eax + 0x35]
shl ecx, 2
and edx, 0xfffffffb
or edx, ecx
mov byte [eax + 0x35], dl
mov eax, dword [ebp - 0x428]
movzx ecx, byte [esi + 0x17b]
shr ecx, 6
and ecx, 1
movzx edx, byte [eax + 0x35]
shl ecx, 3
and edx, 0xfffffff7
or edx, ecx
mov byte [eax + 0x35], dl
mov eax, dword [ebp - 0x428]
movzx ecx, byte [esi + 0x17b]
shr ecx, 3
movzx edx, byte [eax + 0x35]
and ecx, 0xfffffff0
and edx, 0xffffffef
or edx, ecx
mov byte [eax + 0x35], dl
mov eax, dword [ebp - 0x428]
movzx ecx, byte [esi + 0x17c]
and ecx, 1
movzx edx, byte [eax + 0x35]
shl ecx, 5
and edx, 0xffffffdf
or edx, ecx
mov byte [eax + 0x35], dl
mov eax, dword [ebp - 0x428]
movzx ecx, byte [esi + 0x17c]
shr ecx, 1
and ecx, 1
movzx edx, byte [eax + 0x35]
shl ecx, 6
and edx, 0xffffffbf
or edx, ecx
mov byte [eax + 0x35], dl
mov eax, dword [ebp - 0x428]
movzx ecx, byte [esi + 0x17c]
shr ecx, 2
movzx edx, byte [eax + 0x35]
shl ecx, 7
and edx, 0x7f
or edx, ecx
mov byte [eax + 0x35], dl
mov eax, dword [ebp - 0x428]
movzx ecx, byte [esi + 0x17e]
and ecx, 2
movzx edx, byte [eax + 0x36]
and edx, 0xfffffffd
or edx, ecx
mov byte [eax + 0x36], dl
mov eax, dword [ebp - 0x428]
movzx ecx, byte [esi + 0x17e]
and ecx, 4
movzx edx, byte [eax + 0x36]
and edx, 0xfffffffb
or edx, ecx
mov byte [eax + 0x36], dl
mov eax, dword [ebp - 0x428]
movzx ecx, byte [esi + 0x17e]
and ecx, 1
movzx edx, byte [eax + 0x36]
and edx, 0xfffffffe
or edx, ecx
mov byte [eax + 0x36], dl
mov edx, dword [ebp - 0x428]
mov ecx, dword [esi + 0x80]
mov dword [edx + 0x10], ecx
mov eax, dword [ebp - 0x428]
movzx ecx, byte [esi + 0x17f]
shr ecx, 6
and ecx, 1
movzx edx, byte [eax + 0x36]
shl ecx, 4
and edx, 0xffffffef
or edx, ecx
mov byte [eax + 0x36], dl
mov eax, dword [ebp - 0x428]
movzx ecx, byte [esi + 0x17f]
and ecx, 0x20
movzx edx, byte [eax + 0x36]
and edx, 0xffffffdf
or edx, ecx
mov byte [eax + 0x36], dl
mov edx, dword [ebp - 0x428]
mov ecx, dword [esi + 0x74]
mov dword [edx + 0x14], ecx
mov ecx, dword [esi + 0x58]
mov edx, dword [ebp - 0x428]
mov ecx, dword [ecx + 0x14]
mov dword [edx + 0x20], ecx
mov ecx, dword [esi + 0x58]
mov eax, dword [ebp - 0x428]
mov ecx, dword [ecx + 4]
mov dword [eax + 8], ecx
mov ecx, dword [esi + 0x58]
mov edx, dword [ebp - 0x428]
mov ecx, dword [ecx + 8]
mov dword [edx + 0xc], ecx
mov eax, dword [esi + 0x58]
mov ecx, dword [ebp - 0x428]
movzx eax, byte [eax + 0xa7]
shr eax, 1
and eax, 1
movzx edx, byte [ecx + 0x36]
shl eax, 3
and edx, 0xfffffff7
or edx, eax
mov byte [ecx + 0x36], dl
mov edx, dword [ebp - 0x428]
mov ecx, dword [esi + 0x90]
mov dword [edx + 0x28], ecx
mov ecx, dword [ebp - 0x428]
mov dword [ecx + 0x24], 0
mov eax, dword [esi + 0x90]
test eax, eax
je 0x41a05e
mov ecx, dword [ebp - 0x428]
mov dword [eax + 0x24], ecx
mov ecx, dword [ebp - 0x428]
jmp 0x41a070
mov ecx, dword [ebp - 0x428]
mov dword [esi + 0x8c], ecx
mov ecx, dword [ebp - 0x428]
mov dword [esi + 0x90], ecx
mov ecx, dword [esi + 0x84]
test ecx, ecx
mov edx, dword [ebp - 0x1bc]
je 0x41a30b
push dword [esi + 0xfc]
push dword [ebp - 0x424]
push ecx
lea eax, [ebp - 0x42c]
push eax
lea ecx, [ebp - 0x6b0]
push ecx
lea ecx, [ebp - 0x478]
push ecx
lea ecx, [ebp - 0x430]
push ecx
push dword [ebp - 0x1c8]
call edx
add esp, 0x20
mov eax, dword [esi + 0x90]
mov dword [ebp - 0x448], eax
mov ecx, dword [eax]
mov dword [esi + 0x84], ecx
mov ecx, dword [eax + 4]
mov dword [esi + 0x78], ecx
mov ecx, dword [eax + 0x18]
mov dword [esi + 0xfc], ecx
mov ecx, dword [eax + 0x1c]
mov dword [esi + 0x120], ecx
movzx ecx, byte [eax + 0x2c]
mov byte [esi + 0x166], cl
movzx edx, byte [eax + 0x2d]
mov byte [esi + 0x167], dl
movzx edx, byte [eax + 0x2e]
mov byte [esi + 0x168], dl
movzx edx, byte [eax + 0x2f]
mov byte [esi + 0x16b], dl
movzx edx, byte [eax + 0x30]
mov byte [esi + 0x16c], dl
movzx edx, byte [eax + 0x31]
mov byte [esi + 0x175], dl
movzx edx, byte [eax + 0x32]
mov byte [esi + 0x176], dl
movzx edx, byte [eax + 0x33]
mov byte [esi + 0x173], dl
movzx edx, byte [eax + 0x34]
mov byte [esi + 0x174], dl
movzx ecx, byte [eax + 0x35]
and ecx, 1
movzx edx, byte [esi + 0x179]
shl ecx, 5
and edx, 0xffffffdf
or edx, ecx
mov byte [esi + 0x179], dl
movzx ecx, byte [eax + 0x35]
shr ecx, 1
and ecx, 1
movzx edx, byte [esi + 0x17a]
shl ecx, 2
and edx, 0xfffffffb
or edx, ecx
mov byte [esi + 0x17a], dl
movzx ecx, byte [eax + 0x35]
shr ecx, 2
and ecx, 1
movzx edx, byte [esi + 0x17b]
shl ecx, 5
and edx, 0xffffffdf
or edx, ecx
mov byte [esi + 0x17b], dl
and edx, 0xffffffbf
movzx ecx, byte [eax + 0x35]
shr ecx, 3
and ecx, 1
shl ecx, 6
or edx, ecx
mov byte [esi + 0x17b], dl
and edx, 0x7f
movzx ecx, byte [eax + 0x35]
shr ecx, 4
shl ecx, 7
or edx, ecx
mov byte [esi + 0x17b], dl
movzx ecx, byte [eax + 0x35]
shr ecx, 5
movzx edx, byte [esi + 0x17c]
and ecx, 1
and edx, 0xfffffffe
or edx, ecx
mov byte [esi + 0x17c], dl
and edx, 0xfffffffd
movzx ecx, byte [eax + 0x35]
shr ecx, 6
and ecx, 1
add ecx, ecx
or edx, ecx
mov byte [esi + 0x17c], dl
and edx, 0xfffffffb
movzx ecx, byte [eax + 0x35]
shr ecx, 5
and ecx, 0xfffffffc
or edx, ecx
mov byte [esi + 0x17c], dl
movzx edx, byte [esi + 0x17e]
movzx ecx, byte [eax + 0x36]
and edx, 0xfffffffd
and ecx, 2
or edx, ecx
mov byte [esi + 0x17e], dl
and edx, 0xfffffffb
movzx ecx, byte [eax + 0x36]
and ecx, 4
or edx, ecx
mov byte [esi + 0x17e], dl
and edx, 0xfffffffe
movzx ecx, byte [eax + 0x36]
and ecx, 1
or edx, ecx
mov byte [esi + 0x17e], dl
mov ecx, dword [eax + 0x10]
mov dword [esi + 0x80], ecx
movzx ecx, byte [eax + 0x36]
shr ecx, 4
and ecx, 1
movzx edx, byte [esi + 0x17f]
shl ecx, 6
and edx, 0xffffffbf
or edx, ecx
mov byte [esi + 0x17f], dl
and edx, 0xffffffdf
movzx ecx, byte [eax + 0x36]
and ecx, 0x20
or edx, ecx
mov byte [esi + 0x17f], dl
mov ecx, dword [eax + 0x14]
mov dword [esi + 0x74], ecx
mov ecx, dword [eax + 0x28]
test ecx, ecx
je 0x41a2dd
mov dword [esi + 0x90], ecx
push dword [ecx + 0x24]
call fcn.00431ee0
mov dword [ebp - 0x2c], eax
add esp, 4
cmp dword [ebp - 0x2c], 0
jne 0x4177a6
dec word [esi + 0x164]
mov dword [esi + 0x4c], 0
mov eax, dword [ebp - 0x42c]
test eax, eax
je 0x416e6d
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
push dword [ebp - 0x448]
call fcn.00431ee0
mov dword [ebp - 0x2c], eax
add esp, 4
mov dword [esi + 0x90], 0
cmp dword [ebp - 0x2c], 0
je 0x41a2b4
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
push 0xc8
push dword [ebp - 0x424]
lea ecx, [ebp - 0x788]
push ecx
lea eax, [ebp - 0x42c]
push eax
lea ecx, [ebp - 0x6b0]
push ecx
lea ecx, [ebp - 0x478]
push ecx
lea ecx, [ebp - 0x430]
push ecx
push dword [ebp - 0x1c8]
call edx
jmp 0x41a0bb
mov ecx, 1
jmp 0x416f1d
mov ecx, 1
jmp 0x41715d
mov ecx, 1
jmp 0x4170cb
mov edi, dword [ebp - 4]
jmp 0x41969f
mov ecx, dword [esi + 0x18]
test ecx, ecx
je 0x41a3c3
test byte [ecx + 0x44], 2
je 0x41a39e
mov dword [ecx + 0x38], eax
mov ecx, dword [esi + 0x18]
mov dword [ecx + 0x3c], eax
mov ecx, dword [esi + 0x64]
test ecx, ecx
je 0x41a391
xor ebx, ebx
mov dword [ecx + 4], ebx
mov dword [esi + 0x64], ebx
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
push eax
movzx ecx, byte [esi + 0x17c]
push eax
and ecx, 7
push ecx
push 0xffffffffffffffff
push esi
call fcn.0043da80
add esp, 0x14
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
push esi
push eax
push eax
push 1
call fcn.00409370
add esp, 0x10
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x2c]
mov edi, ecx
jmp 0x41969f
xor eax, eax
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret