Function at 0x5d83f0
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push esi
push edi
push ebx
sub esp, 0x1bc
mov eax, dword [ebp + 8]
mov dword [ebp - 0x194], eax
mov edx, dword [0x7adbc0]
mov ebx, dword [ebp + 0xc]
xor edx, ebp
mov dword [ebp - 0x10], edx
cmp ebx, 0xfffffffb
je 0x5da956
push 5
push dword [ebp - 0x194]
lea eax, [ebp - 0x198]
push eax
push ebx
call fcn.00611150
mov edi, eax
add esp, 0x10
test edi, edi
je 0x5d84df
movzx ecx, byte [ebp + 0x13]
lea edx, [ebp + 0x20]
and ecx, 0x80
shr ecx, 7
mov dword [ebp - 0x1c8], ecx
je 0x5d8464
lea edx, [ebp + 0x23]
and edx, 0xfffffffc
add edx, 4
mov eax, dword [edx - 4]
jmp 0x5d8466
xor eax, eax
mov ecx, eax
shr ecx, 0xf
movzx esi, byte [ebp + 0x10]
and ecx, 1
and esi, 1
mov dword [ebp - 0x1c4], ecx
or esi, ecx
je 0x5d84ce
cmp dword [ebp - 0x1c8], 0
je 0x5d84ab
test al, 0x10
je 0x5d84ab
add edx, 3
and edx, 0xfffffffc
mov ecx, dword [edx]
add edx, 7
and edx, 0xfffffffc
cmp byte [ecx], 0x38
mov esi, dword [edx]
jne 0x5d84ab
cmp byte [ecx + 2], 0x4e
je 0x5d96ff
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
movzx eax, di
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
push str.unknown
push ebx
push 2
push edi
call fcn.0060b140
add esp, 0x10
mov edi, dword [ebp - 0x198]
movzx esi, byte [ebp + 0x10]
mov ecx, esi
and ecx, 1
and esi, 2
movzx edx, byte [edi + 0x1a4]
and edx, 0xfffffffe
or edx, ecx
mov byte [edi + 0x1a4], dl
movzx edi, byte [ebp + 0x12]
mov edx, edi
mov ecx, dword [ebp - 0x198]
shr edx, 5
and edx, 1
movzx eax, byte [ecx + 0x1a4]
shl edx, 2
and eax, 0xfffffffb
or eax, edx
mov byte [ecx + 0x1a4], al
mov eax, dword [ebp - 0x198]
shr edi, 1
and edi, 0xffffffe0
movzx ecx, byte [eax + 0x1a4]
and ecx, 0xfffffffd
or ecx, esi
mov byte [eax + 0x1a4], cl
mov esi, dword [ebp - 0x198]
movzx edx, byte [esi + 0x1a6]
and edx, 0xffffff9f
or edx, edi
mov byte [esi + 0x1a6], dl
mov edi, dword [ebp - 0x198]
movzx esi, byte [ebp + 0x13]
mov ecx, esi
shl ecx, 7
movzx edx, byte [edi + 0x1a6]
and edx, 0x7f
or edx, ecx
mov byte [edi + 0x1a6], dl
mov edx, esi
mov ecx, dword [ebp - 0x198]
xor edi, edi
shr edx, 1
and edx, 1
movzx eax, byte [ecx + 0x1a7]
shl edx, 3
and eax, 0xfffffff7
or eax, edx
mov byte [ecx + 0x1a7], al
mov eax, dword [ebp - 0x198]
mov dword [eax + 0x9c], edi
mov eax, dword [ebp - 0x198]
mov dword [eax + 0x114], edi
mov edx, dword [ebp - 0x198]
and byte [edx + 0x1ad], 0xf7
mov eax, dword [ebp - 0x198]
mov ecx, dword [eax + 0xd8]
mov edi, dword [eax + 0xdc]
mov dword [eax + 0xd0], ecx
mov dword [eax + 0xd4], edi
mov eax, dword [ebp - 0x198]
test esi, 0x80
je 0x5d8793
lea edx, [ebp + 0x23]
and edx, 0xfffffffc
lea ecx, [edx + 4]
mov esi, dword [ecx - 4]
test eax, eax
je 0x5d8795
test esi, 0x20
je 0x5d8622
or byte [eax + 0x1ab], 0x40
mov eax, dword [ebp - 0x198]
and byte [eax + 0x1ad], 0xbf
test esi, 0x2000
je 0x5d863e
mov eax, dword [ebp - 0x198]
or byte [eax + 0x1ad], 0x40
mov eax, dword [ebp - 0x198]
and byte [eax + 0x1ad], 0x7f
test esi, 0x4000
je 0x5d8660
mov eax, dword [ebp - 0x198]
or byte [eax + 0x1ad], 0x80
mov eax, dword [ebp - 0x198]
and byte [eax + 0x1ae], 0xef
test esi, 0x8000
je 0x5d8682
mov eax, dword [ebp - 0x198]
or byte [eax + 0x1ae], 0x10
mov eax, dword [ebp - 0x198]
and byte [eax + 0x1ae], 0xdf
test esi, 0x10000
je 0x5d86a4
mov eax, dword [ebp - 0x198]
or byte [eax + 0x1ae], 0x20
mov eax, dword [ebp - 0x198]
and byte [eax + 0x1ae], 0xbf
test esi, 0x20000
je 0x5d86c6
mov eax, dword [ebp - 0x198]
or byte [eax + 0x1ae], 0x40
mov eax, dword [ebp - 0x198]
and byte [eax + 0x1ae], 0x7f
test esi, 0x40000
je 0x5d86e8
mov eax, dword [ebp - 0x198]
or byte [eax + 0x1ae], 0x80
mov eax, dword [ebp - 0x198]
and byte [eax + 0x1af], 0xfe
test esi, 0x80000
je 0x5d870a
mov eax, dword [ebp - 0x198]
or byte [eax + 0x1af], 1
test esi, 0x10
je 0x5d878b
add edx, 7
and edx, 0xfffffffc
mov edi, dword [edx]
add edx, 7
and edx, 0xfffffffc
cmp byte [edi], 0x38
mov eax, dword [edx]
mov dword [ebp - 0x1c4], eax
je 0x5da479
cmp byte [edi], 0xb
je 0x5da077
cmp byte [edi], 0x38
je 0x5d9f0f
cmp byte [edi], 0x38
je 0x5d9dd1
cmp byte [edi], 0x38
je 0x5d9c65
cmp byte [edi], 0x38
je 0x5d9ac2
cmp byte [edi], 0x38
je 0x5d9984
cmp byte [edi], 0x38
je 0x5d984d
cmp byte [edi], 1
je 0x5d878b
push 0x29f
push str.for_wseq_fmt.c
push 2
push 8
call fcn.0060b140
add esp, 0x10
mov eax, dword [ebp - 0x198]
jmp 0x5d8795
xor esi, esi
xor edx, edx
mov dword [eax + 0x150], edx
mov eax, dword [ebp - 0x198]
mov dword [eax + 0x158], edx
mov eax, dword [ebp - 0x198]
test byte [eax + 0x1a1], 0x20
jne 0x5d8b85
cmp dword [eax + 0x124], 0xfffffffb
je 0x5d8b85
movzx edx, byte [eax + 0x1a0]
movzx edi, byte [ebp + 0x10]
and edx, 0xfffffffe
shr edi, 7
or edx, edi
mov byte [eax + 0x1a0], dl
mov edi, dword [ebp - 0x198]
movzx eax, byte [ebp + 0x12]
shr eax, 2
and eax, 1
movzx edx, byte [edi + 0x1a0]
add eax, eax
and edx, 0xfffffffd
or edx, eax
movzx eax, byte [ebp + 0x13]
mov byte [edi + 0x1a0], dl
mov edi, eax
shr edi, 3
and edi, 1
mov edx, dword [ebp - 0x198]
mov dword [ebp - 0x1c4], ebx
movzx ebx, byte [edx + 0x1a0]
lea ecx, [edi*4]
and ebx, 0xfffffffb
or ebx, ecx
mov byte [edx + 0x1a0], bl
mov ebx, eax
mov ecx, dword [ebp - 0x198]
shr ebx, 2
and ebx, 1
movzx edx, byte [ecx + 0x1a0]
shl ebx, 3
and edx, 0xfffffff7
or edx, ebx
mov byte [ecx + 0x1a0], dl
mov edx, eax
mov ebx, dword [ebp - 0x198]
shr edx, 6
and edx, 1
movzx ecx, byte [ebx + 0x1a0]
shl edx, 4
and ecx, 0xffffffef
or ecx, edx
mov byte [ebx + 0x1a0], cl
mov ecx, edi
mov ebx, dword [ebp - 0x198]
shl ecx, 5
shl edi, 3
movzx edx, byte [ebx + 0x1a0]
and edx, 0xffffffdf
or edx, ecx
mov byte [ebx + 0x1a0], dl
mov edx, eax
mov ecx, dword [ebp - 0x198]
shr edx, 4
and edx, 1
movzx ebx, byte [ecx + 0x1a9]
shl edx, 2
and ebx, 0xfffffffb
or ebx, edx
mov byte [ecx + 0x1a9], bl
mov edx, dword [ebp - 0x198]
shr eax, 5
and eax, 1
movzx ecx, byte [edx + 0x1a9]
and ecx, 0xfffffff7
or ecx, edi
mov edi, eax
mov byte [edx + 0x1a9], cl
mov ecx, dword [ebp - 0x198]
shl edi, 6
shl eax, 7
movzx edx, byte [ecx + 0x1a0]
and edx, 0xffffffbf
or edx, edi
mov byte [ecx + 0x1a0], dl
mov ecx, esi
mov edi, dword [ebp - 0x198]
shr ecx, 1
and ecx, 1
movzx ebx, byte [edi + 0x1a0]
and ebx, 0x7f
or ebx, eax
mov eax, esi
mov byte [edi + 0x1a0], bl
and eax, 1
mov edi, dword [ebp - 0x198]
shl ecx, 5
movzx edx, byte [edi + 0x1a1]
and edx, 0xfffffffe
or edx, eax
mov byte [edi + 0x1a1], dl
mov edi, esi
mov eax, dword [ebp - 0x198]
shr edi, 2
and edi, 3
movzx ebx, byte [eax + 0x1a9]
add edi, edi
and ebx, 0xffffffdf
or ebx, ecx
mov ecx, esi
mov byte [eax + 0x1a9], bl
mov eax, dword [ebp - 0x198]
shr ecx, 0xa
mov dword [ebp - 0x1c8], ecx
mov ecx, esi
movzx edx, byte [eax + 0x1a1]
and edx, 0xfffffff9
or edx, edi
mov edi, esi
mov byte [eax + 0x1a1], dl
mov edx, esi
mov ebx, dword [ebp - 0x198]
and edx, 0xffffff80
shr edi, 9
and edi, 1
movzx eax, byte [ebx + 0x1ac]
shl edi, 3
and eax, 0xfffffff7
or eax, edi
mov byte [ebx + 0x1ac], al
mov edi, dword [ebp - 0x198]
shr ecx, 7
and ecx, 0xffffff80
movzx eax, byte [edi + 0x1ab]
and eax, 0x7f
or eax, edx
mov byte [edi + 0x1ab], al
mov eax, esi
mov edi, dword [ebp - 0x198]
shr eax, 0xf
and eax, 1
movzx ebx, byte [edi + 0x1ad]
and ebx, 0x7f
or ebx, ecx
mov byte [edi + 0x1ad], bl
mov edi, esi
mov ecx, dword [ebp - 0x198]
shl eax, 4
shr edi, 0x10
movzx edx, byte [ecx + 0x1ae]
and edi, 1
and edx, 0xffffffef
or edx, eax
mov byte [ecx + 0x1ae], dl
mov edx, esi
mov ebx, dword [ebp - 0x198]
mov ecx, esi
shl edi, 5
shr edx, 0x11
movzx eax, byte [ebx + 0x1ae]
and edx, 1
and eax, 0xffffffdf
or eax, edi
mov byte [ebx + 0x1ae], al
mov edi, dword [ebp - 0x198]
shl edx, 6
shr ecx, 0xb
movzx eax, byte [edi + 0x1ae]
and ecx, 0xffffff80
and eax, 0xffffffbf
or eax, edx
mov byte [edi + 0x1ae], al
mov eax, esi
mov edi, dword [ebp - 0x198]
shr eax, 0x13
and eax, 1
movzx ebx, byte [edi + 0x1ae]
and ebx, 0x7f
or ebx, ecx
mov byte [edi + 0x1ae], bl
mov ecx, dword [ebp - 0x198]
mov ebx, dword [ebp - 0x1c4]
movzx edx, byte [ecx + 0x1af]
and edx, 0xfffffffe
or edx, eax
mov byte [ecx + 0x1af], dl
mov ecx, dword [ebp - 0x198]
movzx eax, byte [ecx + 0x1ac]
btr eax, 4
jb 0x5d8abe
mov edx, dword [ebp - 0x1c8]
and edx, 1
shl edx, 4
or eax, edx
mov byte [ecx + 0x1ac], al
mov ecx, dword [ebp - 0x198]
mov eax, 1
push eax
push 4
push eax
push ecx
call fcn.005eb2f0
add esp, 0x10
test eax, eax
je 0x5d8b7f
mov ecx, dword [ebp - 0x198]
mov edx, dword [ecx + 0x20]
test edx, edx
je 0x5da4be
test byte [edx + 0x44], 2
je 0x5d8b39
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x198]
mov ecx, dword [edx + 0x20]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x198]
mov edx, dword [ebx + 0x7c]
test edx, edx
je 0x5d8b19
xor ecx, ecx
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x198]
mov dword [edx + 0x7c], ecx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
push eax
push eax
movzx eax, byte [ecx + 0x1ae]
and eax, 0x10
movzx edx, byte [ecx + 0x1a4]
shr eax, 1
and edx, 7
or edx, eax
push edx
push 0xffffffffffffffff
push ecx
call fcn.0061aa20
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
mov eax, dword [ebp - 0x198]
test byte [eax + 0x1a1], 0x40
je 0x5d8c42
mov edx, dword [eax + 0x20]
test edx, edx
je 0x5da4e8
test byte [edx + 0x44], 2
je 0x5d8bf7
mov eax, 0x2f
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x198]
mov ecx, dword [edx + 0x20]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x198]
mov eax, dword [ebx + 0x7c]
test eax, eax
je 0x5d8bd2
xor edx, edx
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x198]
mov dword [eax + 0x7c], edx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
mov eax, 0x2f
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
movzx ecx, byte [eax + 0x1ae]
mov edx, 0x2f
and ecx, 0x10
movzx ebx, byte [eax + 0x1a4]
push edx
shr ecx, 1
and ebx, 7
push edx
or ebx, ecx
push ebx
push 0xffffffffffffffff
push eax
call fcn.0061aa20
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
test byte [eax + 0x1a2], 0x40
jne 0x5d8d1e
cmp ebx, 0xfffffffb
je 0x5d8d1e
test eax, eax
je 0x5d8c6b
movzx edx, word [eax + 0x18a]
test edx, edx
jg 0x5d8d1e
mov edx, dword [eax + 0x20]
test edx, edx
je 0x5da517
test byte [edx + 0x44], 2
je 0x5d8cd3
mov dword [edx + 0x38], 0x101
mov eax, dword [ebp - 0x198]
mov edx, dword [eax + 0x20]
mov dword [edx + 0x3c], 0x1f
mov ecx, dword [ebp - 0x198]
mov eax, dword [ecx + 0x7c]
test eax, eax
je 0x5d8cae
xor edx, edx
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x198]
mov dword [eax + 0x7c], edx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
mov eax, 0x101
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
movzx edx, byte [eax + 0x1ae]
and edx, 0x10
movzx ecx, byte [eax + 0x1a4]
push 0x1f
shr edx, 1
and ecx, 7
push 0x101
or ecx, edx
push ecx
push 0xffffffffffffffff
push eax
call fcn.0061aa20
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
test eax, eax
je 0x5d8d31
movzx edx, word [eax + 0x18a]
test edx, edx
jg 0x5d8e07
test byte [eax + 0x1a3], 8
je 0x5d8e07
test byte [eax + 0x1a0], 4
je 0x5d8d54
cmp byte [eax + 0x18e], 1
jne 0x5d8e07
mov edx, dword [eax + 0x20]
test edx, edx
je 0x5da546
test byte [edx + 0x44], 2
je 0x5d8dbc
mov dword [edx + 0x38], 0x103
mov eax, dword [ebp - 0x198]
mov edx, dword [eax + 0x20]
mov dword [edx + 0x3c], 0x1f
mov ecx, dword [ebp - 0x198]
mov eax, dword [ecx + 0x7c]
test eax, eax
je 0x5d8d97
xor edx, edx
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x198]
mov dword [eax + 0x7c], edx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
mov eax, 0x103
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
movzx edx, byte [eax + 0x1ae]
and edx, 0x10
movzx ecx, byte [eax + 0x1a4]
push 0x1f
shr edx, 1
and ecx, 7
push 0x103
or ecx, edx
push ecx
push 0xffffffffffffffff
push eax
call fcn.0061aa20
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
mov ebx, dword [eax + 0x70]
mov eax, 0x78
xor edx, edx
mov dword [ebx + eax - 4], edx
mov dword [ebx + eax - 8], edx
mov dword [ebx + eax - 0xc], edx
mov dword [ebx + eax - 0x10], edx
mov dword [ebx + eax - 0x14], edx
sub eax, 0x14
jne 0x5d8e11
mov eax, esi
shr eax, 8
and eax, 1
movzx edx, byte [ebx + 0x74]
shl eax, 5
and edx, 0x5f
shr esi, 0xb
or edx, eax
and esi, 0xffffff80
mov edi, dword [ebp - 0x198]
or edx, esi
mov dword [ebx], edi
mov byte [ebx + 0x74], dl
mov edx, dword [ebp - 0x198]
movzx eax, byte [edx + 0x19b]
test eax, eax
je 0x5d8eae
cmp eax, 1
je 0x5d8e9b
cmp eax, 2
jne 0x5d8e81
movzx eax, byte [ebx + 0x70]
or eax, 4
and eax, 0xffffffe7
mov byte [ebx + 0x70], al
mov edx, dword [ebp - 0x198]
jmp 0x5d8eae
cmp eax, 3
jne 0x5d8eae
movzx eax, byte [ebx + 0x70]
and eax, 0xffffffeb
or eax, 8
mov byte [ebx + 0x70], al
mov edx, dword [ebp - 0x198]
jmp 0x5d8eae
movzx eax, byte [ebx + 0x70]
and eax, 0xfffffff3
or eax, 0x10
mov byte [ebx + 0x70], al
mov edx, dword [ebp - 0x198]
movzx eax, byte [edx + 0x197]
mov byte [ebx + 0x6d], al
test byte [ebp + 0x10], 8
je 0x5d8fb2
mov eax, dword [ebp - 0x198]
test byte [eax + 0x1ae], 0x10
jne 0x5d8edf
movzx eax, byte [eax + 0x1a4]
not eax
and eax, 1
jmp 0x5d8ee1
xor eax, eax
push eax
lea eax, [ebp - 0x19c]
push eax
push dword [ebp + 0x1c]
call fcn.00614820
add esp, 0xc
test eax, eax
je 0x5d8fa3
mov ecx, dword [ebp - 0x198]
mov edx, dword [ecx + 0x20]
test edx, edx
je 0x5da575
test byte [edx + 0x44], 2
je 0x5d8f5d
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x198]
mov ecx, dword [edx + 0x20]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x198]
mov edx, dword [ebx + 0x7c]
test edx, edx
je 0x5d8f3d
xor ecx, ecx
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x198]
mov dword [edx + 0x7c], ecx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
push eax
push eax
movzx eax, byte [ecx + 0x1ae]
and eax, 0x10
movzx edx, byte [ecx + 0x1a4]
shr eax, 1
and edx, 7
or edx, eax
push edx
push 0xffffffffffffffff
push ecx
call fcn.0061aa20
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
mov eax, dword [ebp - 0x19c]
mov dword [ebx + 8], eax
or byte [ebx + 0x73], 2
jmp 0x5d8fb8
mov eax, dword [ebp + 0x1c]
mov dword [ebx + 8], eax
mov edi, dword [ebp - 0x198]
test byte [edi + 0x1a3], 4
je 0x5d9116
mov edx, dword [edi + 0xd0]
mov eax, dword [edi + 0xd4]
sub edx, dword [edi + 0xd8]
sub eax, dword [edi + 0xdc]
or edx, eax
je 0x5d90de
test byte [edi + 0x1a5], 4
jne 0x5da6c7
push 0
mov edx, dword [edi + 0xd0]
lea eax, [ebp - 0x1a0]
push eax
mov ecx, dword [edi + 0xd4]
push edx
push dword [edi + 0x104]
mov dword [eax - 4], edx
mov dword [eax], ecx
call dword [sym.imp.KERNEL32.dll_SetFilePointer]
mov ecx, eax
mov dword [ebp - 0x1a4], ecx
cmp ecx, 0xffffffff
je 0x5da696
mov edx, dword [ebp - 0x1a0]
mov eax, 0xffffffff
sub ecx, eax
sub edx, eax
or ecx, edx
je 0x5da59f
mov ecx, dword [ebp - 0x198]
mov eax, dword [ecx + 0x94]
test eax, eax
je 0x5d9061
mov byte [eax + 0x1e], 0
mov ecx, dword [ebp - 0x198]
mov eax, dword [ecx + 0xd0]
mov edx, dword [ecx + 0xd4]
mov dword [ecx + 0xe0], eax
mov dword [ecx + 0xe4], edx
mov esi, dword [ebp - 0x198]
mov ecx, dword [esi + 0xd0]
mov ebx, dword [esi + 0xd4]
mov dword [esi + 0xd8], ecx
xor ecx, ecx
mov dword [esi + 0xdc], ebx
mov edi, dword [ebp - 0x198]
mov dword [edi + 0xe8], ecx
mov dword [edi + 0xec], ecx
mov eax, dword [ebp - 0x198]
mov edi, dword [eax + 0xe8]
mov dword [eax + 0x110], edi
mov edx, dword [ebp - 0x198]
and byte [edx + 0x1a5], 0xfd
mov ebx, dword [ebp - 0x198]
mov dword [ebx + 0xb0], ecx
mov edi, dword [ebp - 0x198]
jmp 0x5d9116
mov edx, dword [edi + 0xe8]
mov eax, edx
mov ecx, dword [edi + 0xec]
or eax, ecx
je 0x5d9116
add dword [edi + 0xe0], edx
adc dword [edi + 0xe4], ecx
xor eax, eax
mov edx, dword [ebp - 0x198]
mov dword [edx + 0xe8], eax
mov dword [edx + 0xec], eax
mov edi, dword [ebp - 0x198]
mov eax, dword [edi + 0x94]
test eax, eax
je 0x5d9135
cmp byte [eax + 0x1e], 0
je 0x5d9135
movzx eax, word [edi + 0x18a]
test eax, eax
jle 0x5d941f
movzx eax, word [edi + 0x18a]
test eax, eax
jg 0x5d940b
push 0
push edi
call fcn.006230f0
add esp, 8
test eax, eax
je 0x5d91f5
mov eax, dword [edi + 0x20]
test eax, eax
je 0x5da8ce
test byte [eax + 0x44], 2
je 0x5d91aa
mov edx, 0x26
mov dword [eax + 0x38], edx
mov eax, dword [edi + 0x20]
mov dword [eax + 0x3c], edx
mov eax, dword [edi + 0x7c]
test eax, eax
je 0x5d9185
xor edx, edx
mov dword [eax + 4], edx
mov dword [edi + 0x7c], edx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
mov eax, 0x26
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
movzx edx, byte [edi + 0x1ae]
mov eax, 0x26
and edx, 0x10
movzx ecx, byte [edi + 0x1a4]
push eax
shr edx, 1
and ecx, 7
push eax
or ecx, edx
push ecx
push 0xffffffffffffffff
push edi
call fcn.0061aa20
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
movsx edx, byte [edi + 0x18c]
cmp edx, 8
ja 0x5d9348
movzx eax, byte [edx + 0x741990]
add eax, 0x5d9213
jmp eax
push 0x375
push str.for_wseq_fmt.c
push 2
push 8
call fcn.0060b140
add esp, 0x10
movzx eax, byte [edi + 0x1a0]
mov ecx, dword [edi + 0x50]
test al, 4
je 0x5d9387
test byte [edi + 0x1a2], 0x40
je 0x5d9387
test byte [edi + 0x1a3], 8
je 0x5d9387
cmp byte [edi + 0x18c], 1
je 0x5d93d2
movsx eax, byte [edi + 0x18e]
cmp eax, 2
jne 0x5d93ae
movsx eax, byte [edi + 0x18c]
cmp eax, 7
je 0x5d93d2
cmp eax, 6
je 0x5d93d2
cmp eax, 8
je 0x5d93d2
dec dword [edi + 0x58]
jmp 0x5d93d2
cmp eax, 1
jne 0x5d93d2
movsx eax, byte [edi + 0x18c]
cmp eax, 7
je 0x5d93cc
cmp eax, 6
je 0x5d93cc
cmp eax, 8
je 0x5d93cc
dec dword [edi + 0x58]
add ecx, 5
mov dword [edi + 0x50], ecx
mov dword [edi + 0x5c], ecx
mov dword [edi + 0x60], 0
mov edi, dword [ebp - 0x198]
test edi, edi
je 0x5d93f1
movzx eax, word [edi + 0x18a]
test eax, eax
jg 0x5d940b
mov eax, dword [edi + 0x58]
sub eax, dword [edi + 0x50]
push eax
push 0x20
push dword [edi + 0x50]
call fcn.0065d380
add esp, 0xc
mov edi, dword [ebp - 0x198]
mov eax, dword [edi + 0x50]
mov dword [edi + 0x68], eax
mov ecx, dword [ebp - 0x198]
mov edx, dword [ecx + 0x50]
mov dword [ecx + 0x60], edx
jmp 0x5d9425
mov eax, dword [edi + 0x50]
mov dword [edi + 0x5c], eax
mov edx, dword [ebp - 0x198]
mov eax, dword [edx + 0x94]
test eax, eax
je 0x5d947c
cmp byte [eax + 0x1f], 0
je 0x5d947c
movzx eax, word [edx + 0x18a]
test eax, eax
jg 0x5d947c
push dword [edx + 0x104]
call dword [sym.imp.KERNEL32.dll_GetFileType]
cmp eax, 2
je 0x5d947c
mov edx, dword [ebp - 0x198]
mov eax, dword [edx + 0x94]
test eax, eax
je 0x5d9471
mov byte [eax + 0x1f], 0
mov edx, dword [ebp - 0x198]
push 0
push edx
call fcn.006230f0
add esp, 8
test byte [ebp + 0x12], 8
jne 0x5d94b2
mov edx, dword [ebp - 0x198]
test edx, edx
je 0x5d949b
movzx eax, word [edx + 0x18a]
test eax, eax
jg 0x5d96cb
mov eax, dword [edx + 0x94]
test eax, eax
je 0x5d96cb
mov byte [eax + 0x1e], 0
jmp 0x5d96cb
lea eax, [ebp - 0x190]
push eax
lea edx, [ebp - 0x1b8]
push edx
lea ecx, [ebp + 0x18]
push ecx
lea ebx, [ebp + 0x14]
push ebx
call fcn.0061b040
add esp, 0x10
test eax, eax
jne 0x5d95d6
mov ebx, dword [ebp - 0x1ac]
lea eax, [ebp - 0x1c8]
push eax
push 0
mov edi, dword [eax + 0x10]
lea edx, [ebx + 1]
push edx
call fcn.005e1480
add esp, 0xc
test eax, eax
jne 0x5d95d6
test ebx, ebx
jle 0x5d951f
xor esi, esi
movsx eax, byte [esi + edi]
push eax
call fcn.006c5fbf
mov edx, dword [ebp - 0x1c8]
add esp, 4
mov byte [edx + esi], al
inc esi
cmp esi, ebx
jl 0x5d9504
mov eax, dword [ebp - 0x1c8]
mov byte [ebx + eax], 0
mov ecx, dword [ebp - 0x1c8]
cmp byte [ecx + ebx - 1], 0x20
jne 0x5d954e
cmp ebx, 1
jle 0x5d954e
mov byte [ecx + ebx - 1], 0
dec ebx
mov ecx, dword [ebp - 0x1c8]
cmp byte [ecx + ebx - 1], 0x20
je 0x5d9536
mov edi, 0x741ab4
mov esi, ecx
mov dl, byte [edi]
cmp dl, byte [esi]
jne 0x5d9575
test dl, dl
je 0x5d9571
mov dl, byte [edi + 1]
cmp dl, byte [esi + 1]
jne 0x5d9575
add edi, 2
add esi, 2
test dl, dl
jne 0x5d9555
xor eax, eax
jmp 0x5d957a
sbb eax, eax
or eax, 1
test eax, eax
jne 0x5d9582
xor ebx, ebx
jmp 0x5d95b7
mov edi, 0x741ab0
mov esi, ecx
mov dl, byte [edi]
cmp dl, byte [esi]
jne 0x5d95a9
test dl, dl
je 0x5d95a5
mov dl, byte [edi + 1]
cmp dl, byte [esi + 1]
jne 0x5d95a9
add edi, 2
add esi, 2
test dl, dl
jne 0x5d9589
xor eax, eax
jmp 0x5d95ae
sbb eax, eax
or eax, 1
test eax, eax
jne 0x5d95c2
mov ebx, 1
push ecx
call fcn.005e1540
add esp, 4
jmp 0x5d95d6
push ecx
call fcn.005e1540
add esp, 4
test eax, eax
jne 0x5d95d6
mov eax, 0x30
jmp 0x5d95de
test eax, eax
je 0x5d9685
mov ecx, dword [ebp - 0x198]
mov edx, dword [ecx + 0x20]
test edx, edx
je 0x5da92c
test byte [edx + 0x44], 2
je 0x5d963f
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x198]
mov ecx, dword [edx + 0x20]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x198]
mov edx, dword [ebx + 0x7c]
test edx, edx
je 0x5d961f
xor ecx, ecx
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x198]
mov dword [edx + 0x7c], ecx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
push eax
push eax
movzx eax, byte [ecx + 0x1ae]
and eax, 0x10
movzx edx, byte [ecx + 0x1a4]
shr eax, 1
and edx, 7
or edx, eax
push edx
push 0xffffffffffffffff
push ecx
call fcn.0061aa20
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
mov edx, dword [ebp - 0x198]
test edx, edx
je 0x5d969a
movzx eax, word [edx + 0x18a]
test eax, eax
jg 0x5d96cb
test ebx, ebx
je 0x5d96ae
mov eax, dword [edx + 0x94]
test eax, eax
je 0x5d96cb
mov byte [eax + 0x1e], 0
jmp 0x5d96cb
mov eax, dword [edx + 0x94]
test eax, eax
je 0x5d96c2
mov byte [eax + 0x1e], 1
mov edx, dword [ebp - 0x198]
mov eax, dword [edx + 0x94]
mov dword [eax + 0xc], edx
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp - 0x194]
call fcn.005dab70
add esp, 0xc
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
lea edx, [ebp - 0x1c8]
push edx
push ebx
call fcn.00612690
add esp, 8
test eax, eax
jne 0x5d84ab
mov ebx, dword [ebp - 0x1c8]
movzx edx, byte [ebp + 0x10]
and edx, 1
and byte [ebx + 0x1ad], 0xf7
mov ebx, dword [ebp - 0x1c8]
movzx ecx, byte [ebx + 0x1a4]
and ecx, 0xfffffffe
or ecx, edx
mov byte [ebx + 0x1a4], cl
mov ebx, dword [ebp - 0x1c8]
mov ecx, dword [ebp - 0x1c4]
shl ecx, 4
movzx edx, byte [ebx + 0x1ae]
and edx, 0xffffffef
or edx, ecx
mov byte [ebx + 0x1ae], dl
mov ecx, dword [ebp - 0x1c8]
mov edx, dword [esi]
mov dword [ecx + 0x114], edx
mov edx, dword [ebp - 0x1c8]
mov esi, dword [esi + 4]
mov dword [edx + 0x9c], esi
mov ecx, dword [ebp - 0x1c8]
mov edx, dword [ecx + 0x20]
test edx, edx
je 0x5d9827
test byte [edx + 0x44], 2
je 0x5d97e0
mov dword [edx + 0x38], edi
mov edx, dword [ebp - 0x1c8]
mov ecx, dword [edx + 0x20]
mov dword [ecx + 0x3c], edi
mov ebx, dword [ebp - 0x1c8]
mov edx, dword [ebx + 0x7c]
test edx, edx
je 0x5d97c2
xor ecx, ecx
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x1c8]
mov dword [edx + 0x7c], ecx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
mov eax, edi
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
movzx eax, byte [ecx + 0x1ae]
and eax, 0x10
movzx edx, byte [ecx + 0x1a4]
push edi
shr eax, 1
and edx, 7
push edi
or edx, eax
push edx
push 0xffffffffffffffff
push ecx
call fcn.0061aa20
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
call fcn.00693023
push ecx
push edi
push edi
push 0
call fcn.00609b70
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
jmp 0x5d84c6
cmp byte [edi + 2], 0x53
jne 0x5d8770
push 3
mov edx, dword [ebp - 0x1c4]
lea eax, [ebp - 0x1bc]
push eax
push 0x53
push dword [edx]
push dword [edx + 4]
call fcn.005e9520
add esp, 0x14
test eax, eax
jne 0x5d98b3
mov ecx, dword [ebp - 0x198]
add edi, 4
movzx edx, byte [ecx + 0x19b]
mov byte [ecx + 0x19c], dl
mov eax, dword [ebp - 0x198]
or byte [eax + 0x1ab], 0x20
mov edx, dword [ebp - 0x198]
mov eax, dword [ebp - 0x1bc]
mov byte [edx + 0x19b], al
jmp 0x5d8770
mov ecx, dword [ebp - 0x198]
mov edx, dword [ecx + 0x20]
test edx, edx
je 0x5d995a
test byte [edx + 0x44], 2
je 0x5d9914
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x198]
mov ecx, dword [edx + 0x20]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x198]
mov edx, dword [ebx + 0x7c]
test edx, edx
je 0x5d98f4
xor ecx, ecx
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x198]
mov dword [edx + 0x7c], ecx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
push eax
push eax
movzx eax, byte [ecx + 0x1ae]
and eax, 0x10
movzx edx, byte [ecx + 0x1a4]
shr eax, 1
and edx, 7
or edx, eax
push edx
push 0xffffffffffffffff
push ecx
call fcn.0061aa20
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
push ecx
push eax
push eax
push 1
call fcn.00609b70
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
jmp 0x5d84c6
cmp byte [edi + 2], 0x51
jne 0x5d8767
push 3
mov edx, dword [ebp - 0x1c4]
lea eax, [ebp - 0x1bc]
push eax
push 0x51
push dword [edx]
push dword [edx + 4]
call fcn.005e9520
add esp, 0x14
test eax, eax
jne 0x5d99f1
mov ecx, dword [ebp - 0x198]
add edi, 4
add dword [ebp - 0x1c4], 8
movzx edx, byte [ecx + 0x197]
mov byte [ecx + 0x198], dl
mov eax, dword [ebp - 0x198]
or byte [eax + 0x1ab], 0x10
mov edx, dword [ebp - 0x198]
mov eax, dword [ebp - 0x1bc]
mov byte [edx + 0x197], al
jmp 0x5d8767
mov ecx, dword [ebp - 0x198]
mov edx, dword [ecx + 0x20]
test edx, edx
je 0x5d9a98
test byte [edx + 0x44], 2
je 0x5d9a52
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x198]
mov ecx, dword [edx + 0x20]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x198]
mov edx, dword [ebx + 0x7c]
test edx, edx
je 0x5d9a32
xor ecx, ecx
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x198]
mov dword [edx + 0x7c], ecx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
push eax
push eax
movzx eax, byte [ecx + 0x1ae]
and eax, 0x10
movzx edx, byte [ecx + 0x1a4]
shr eax, 1
and edx, 7
or edx, eax
push edx
push 0xffffffffffffffff
push ecx
call fcn.0061aa20
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
push ecx
push eax
push eax
push 1
call fcn.00609b70
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
jmp 0x5d84c6
cmp byte [edi + 2], 0x3c
jne 0x5d875e
test esi, 0x80000
je 0x5d9ade
test esi, 0x20000
jne 0x5d9ae4
jmp 0x5d9af3
test byte [ebp + 0x12], 4
jne 0x5d9af3
push 0
push 0x2fc
call fcn.0060b140
add esp, 8
push 3
mov edx, dword [ebp - 0x1c4]
lea eax, [ebp - 0x1bc]
push eax
push 0x3c
push dword [edx]
push dword [edx + 4]
call fcn.005e9520
add esp, 0x14
test eax, eax
jne 0x5d9b94
mov ecx, dword [ebp - 0x198]
movzx edx, byte [ecx + 0x1a6]
mov eax, edx
shr edx, 1
and eax, 0xfffffffb
and edx, 1
shl edx, 2
or eax, edx
mov byte [ecx + 0x1a6], al
mov eax, dword [ebp - 0x198]
or byte [eax + 0x1ab], 8
mov eax, dword [ebp - 0x1bc]
cmp eax, 2
jne 0x5d9b75
mov ecx, dword [ebp - 0x198]
movzx edx, byte [ebp + 0x12]
shr edx, 2
and edx, 1
movzx eax, byte [ecx + 0x1a6]
add edx, edx
and eax, 0xfffffffd
or eax, edx
mov byte [ecx + 0x1a6], al
jmp 0x5d9b85
cmp eax, 1
mov eax, dword [ebp - 0x198]
and byte [eax + 0x1a6], 0xfd
add dword [ebp - 0x1c4], 8
add edi, 4
jmp 0x5d875e
mov ecx, dword [ebp - 0x198]
mov edx, dword [ecx + 0x20]
test edx, edx
je 0x5d9c3b
test byte [edx + 0x44], 2
je 0x5d9bf5
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x198]
mov ecx, dword [edx + 0x20]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x198]
mov edx, dword [ebx + 0x7c]
test edx, edx
je 0x5d9bd5
xor ecx, ecx
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x198]
mov dword [edx + 0x7c], ecx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
push eax
push eax
movzx eax, byte [ecx + 0x1ae]
and eax, 0x10
movzx edx, byte [ecx + 0x1a4]
shr eax, 1
and edx, 7
or edx, eax
push edx
push 0xffffffffffffffff
push ecx
call fcn.0061aa20
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
push ecx
push eax
push eax
push 1
call fcn.00609b70
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
jmp 0x5d84c6
cmp byte [edi + 2], 0x3b
jne 0x5d8755
push 3
mov edx, dword [ebp - 0x1c4]
lea eax, [ebp - 0x1bc]
push eax
push 0x3b
push dword [edx]
push dword [edx + 4]
call fcn.005e9520
add esp, 0x14
test eax, eax
jne 0x5d9d00
mov edx, dword [ebp - 0x198]
movzx eax, byte [edx + 0x191]
mov byte [edx + 0x192], al
mov ecx, dword [ebp - 0x198]
or byte [ecx + 0x1ab], 4
mov eax, dword [ebp - 0x1bc]
cmp eax, 2
je 0x5d9ce4
cmp eax, 1
jne 0x5d9cd0
mov eax, dword [ebp - 0x198]
mov byte [eax + 0x191], 0x27
jmp 0x5d9cf1
cmp eax, 3
jne 0x5d9ce4
mov eax, dword [ebp - 0x198]
mov byte [eax + 0x191], 0x22
jmp 0x5d9cf1
mov eax, dword [ebp - 0x198]
mov byte [eax + 0x191], 0
add dword [ebp - 0x1c4], 8
add edi, 4
jmp 0x5d8755
mov ecx, dword [ebp - 0x198]
mov edx, dword [ecx + 0x20]
test edx, edx
je 0x5d9da7
test byte [edx + 0x44], 2
je 0x5d9d61
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x198]
mov ecx, dword [edx + 0x20]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x198]
mov edx, dword [ebx + 0x7c]
test edx, edx
je 0x5d9d41
xor ecx, ecx
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x198]
mov dword [edx + 0x7c], ecx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
push eax
push eax
movzx eax, byte [ecx + 0x1ae]
and eax, 0x10
movzx edx, byte [ecx + 0x1a4]
shr eax, 1
and edx, 7
or edx, eax
push edx
push 0xffffffffffffffff
push ecx
call fcn.0061aa20
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
push ecx
push eax
push eax
push 1
call fcn.00609b70
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
jmp 0x5d84c6
cmp byte [edi + 2], 0x52
jne 0x5d874c
push 3
mov edx, dword [ebp - 0x1c4]
lea eax, [ebp - 0x1bc]
push eax
push 0x52
push dword [edx]
push dword [edx + 4]
call fcn.005e9520
add esp, 0x14
test eax, eax
jne 0x5d9e3e
mov ecx, dword [ebp - 0x198]
add edi, 4
add dword [ebp - 0x1c4], 8
movzx edx, byte [ecx + 0x199]
mov byte [ecx + 0x19a], dl
mov eax, dword [ebp - 0x198]
or byte [eax + 0x1ab], 2
mov edx, dword [ebp - 0x198]
mov eax, dword [ebp - 0x1bc]
mov byte [edx + 0x199], al
jmp 0x5d874c
mov ecx, dword [ebp - 0x198]
mov edx, dword [ecx + 0x20]
test edx, edx
je 0x5d9ee5
test byte [edx + 0x44], 2
je 0x5d9e9f
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x198]
mov ecx, dword [edx + 0x20]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x198]
mov edx, dword [ebx + 0x7c]
test edx, edx
je 0x5d9e7f
xor ecx, ecx
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x198]
mov dword [edx + 0x7c], ecx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
push eax
push eax
movzx eax, byte [ecx + 0x1ae]
and eax, 0x10
movzx edx, byte [ecx + 0x1a4]
shr eax, 1
and edx, 7
or edx, eax
push edx
push 0xffffffffffffffff
push ecx
call fcn.0061aa20
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
push ecx
push eax
push eax
push 1
call fcn.00609b70
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
jmp 0x5d84c6
cmp byte [edi + 2], 6
jne 0x5d8743
push 3
mov edx, dword [ebp - 0x1c4]
lea eax, [ebp - 0x1bc]
push eax
push 6
push dword [edx]
push dword [edx + 4]
call fcn.005e9520
add esp, 0x14
test eax, eax
jne 0x5d9fa6
mov ecx, dword [ebp - 0x198]
movzx edx, byte [ecx + 0x1a3]
mov eax, edx
shr edx, 5
and eax, 0xffffffbf
and edx, 1
shl edx, 6
or eax, edx
mov byte [ecx + 0x1a3], al
mov eax, dword [ebp - 0x198]
or byte [eax + 0x1ab], 1
mov eax, dword [ebp - 0x1bc]
cmp eax, 1
je 0x5d9f8a
cmp eax, 2
jne 0x5d9f8a
mov eax, dword [ebp - 0x198]
or byte [eax + 0x1a3], 0x20
jmp 0x5d9f97
mov eax, dword [ebp - 0x198]
and byte [eax + 0x1a3], 0xdf
add dword [ebp - 0x1c4], 8
add edi, 4
jmp 0x5d8743
mov ecx, dword [ebp - 0x198]
mov edx, dword [ecx + 0x20]
test edx, edx
je 0x5da04d
test byte [edx + 0x44], 2
je 0x5da007
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x198]
mov ecx, dword [edx + 0x20]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x198]
mov edx, dword [ebx + 0x7c]
test edx, edx
je 0x5d9fe7
xor ecx, ecx
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x198]
mov dword [edx + 0x7c], ecx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
push eax
push eax
movzx eax, byte [ecx + 0x1ae]
and eax, 0x10
movzx edx, byte [ecx + 0x1a4]
shr eax, 1
and edx, 7
or edx, eax
push edx
push 0xffffffffffffffff
push ecx
call fcn.0061aa20
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
push ecx
push eax
push eax
push 1
call fcn.00609b70
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
jmp 0x5d84c6
cmp byte [edi + 2], 0x4f
jne 0x5d873a
mov eax, dword [ebp - 0x198]
test byte [eax + 0x1a3], 4
jne 0x5da201
test byte [eax + 0x1a1], 0x20
jne 0x5da151
mov edx, dword [eax + 0x20]
test edx, edx
je 0x5da310
test byte [edx + 0x44], 2
je 0x5da106
mov eax, 0x6d
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x198]
mov ecx, dword [edx + 0x20]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x198]
mov eax, dword [ebx + 0x7c]
test eax, eax
je 0x5da0e1
xor edx, edx
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x198]
mov dword [eax + 0x7c], edx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
mov eax, 0x6d
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
movzx ecx, byte [eax + 0x1ae]
mov edx, 0x6d
and ecx, 0x10
movzx ebx, byte [eax + 0x1a4]
push edx
shr ecx, 1
and ebx, 7
push edx
or ebx, ecx
push ebx
push 0xffffffffffffffff
push eax
call fcn.0061aa20
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
mov edx, dword [eax + 0x20]
test edx, edx
je 0x5da33f
test byte [edx + 0x44], 2
je 0x5da1b9
mov dword [edx + 0x38], 0x6e
mov eax, dword [ebp - 0x198]
mov edx, dword [eax + 0x20]
mov dword [edx + 0x3c], 0x1f
mov ecx, dword [ebp - 0x198]
mov eax, dword [ecx + 0x7c]
test eax, eax
je 0x5da194
xor edx, edx
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x198]
mov dword [eax + 0x7c], edx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
mov eax, 0x6e
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
movzx edx, byte [eax + 0x1ae]
and edx, 0x10
movzx ecx, byte [eax + 0x1a4]
push 0x1f
shr edx, 1
and ecx, 7
push 0x6e
or ecx, edx
push ecx
push 0xffffffffffffffff
push eax
call fcn.0061aa20
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
test eax, eax
je 0x5da210
movzx edx, word [eax + 0x18a]
test edx, edx
jg 0x5da260
mov edx, dword [ebp - 0x1c4]
mov dword [ebp - 0x1c8], esi
mov ecx, dword [edx]
add ecx, 0xffffffff
mov esi, dword [edx + 4]
adc esi, 0xffffffff
add edx, 8
mov dword [eax + 0xd0], ecx
mov dword [eax + 0xd4], esi
mov eax, dword [ebp - 0x198]
mov dword [ebp - 0x1c4], edx
xor edx, edx
mov esi, dword [ebp - 0x1c8]
mov ecx, dword [eax + 0xd4]
sub ecx, edx
jl 0x5da36b
add edi, 4
jmp 0x5d873a
mov edx, dword [eax + 0x20]
test edx, edx
je 0x5da44a
test byte [edx + 0x44], 2
je 0x5da2c5
mov eax, 0x10f
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x198]
mov ecx, dword [edx + 0x20]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x198]
mov eax, dword [ebx + 0x7c]
test eax, eax
je 0x5da2a0
xor edx, edx
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x198]
mov dword [eax + 0x7c], edx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
mov eax, 0x10f
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
movzx ecx, byte [eax + 0x1ae]
mov edx, 0x10f
and ecx, 0x10
movzx ebx, byte [eax + 0x1a4]
push edx
shr ecx, 1
and ebx, 7
push edx
or ebx, ecx
push ebx
push 0xffffffffffffffff
push eax
call fcn.0061aa20
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
push eax
mov eax, 0x6d
push eax
push eax
push 1
call fcn.00609b70
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
jmp 0x5d84c6
push eax
push 0x1f
push 0x6e
push 1
call fcn.00609b70
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
jmp 0x5d84c6
mov edx, dword [eax + 0x20]
test edx, edx
je 0x5da41b
test byte [edx + 0x44], 2
je 0x5da3d0
mov eax, 0x6f
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x198]
mov ecx, dword [edx + 0x20]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x198]
mov eax, dword [ebx + 0x7c]
test eax, eax
je 0x5da3ab
xor edx, edx
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x198]
mov dword [eax + 0x7c], edx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
mov eax, 0x6f
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
movzx ecx, byte [eax + 0x1ae]
mov edx, 0x6f
and ecx, 0x10
movzx ebx, byte [eax + 0x1a4]
push edx
shr ecx, 1
and ebx, 7
push edx
or ebx, ecx
push ebx
push 0xffffffffffffffff
push eax
call fcn.0061aa20
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
push eax
mov eax, 0x6f
push eax
push eax
push 1
call fcn.00609b70
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
jmp 0x5d84c6
push eax
mov eax, 0x10f
push eax
push eax
push 1
call fcn.00609b70
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
jmp 0x5d84c6
cmp byte [edi + 2], 0x4e
jne 0x5d8731
add edi, 4
mov ecx, dword [ebp - 0x198]
mov edx, dword [eax]
mov dword [ecx + 0x114], edx
mov ecx, dword [ebp - 0x198]
mov edx, dword [eax + 4]
add eax, 8
mov dword [ebp - 0x1c4], eax
mov dword [ecx + 0x9c], edx
mov edx, dword [ebp - 0x198]
and byte [edx + 0x1ad], 0xf7
jmp 0x5d8731
push ecx
push eax
push eax
push 2
call fcn.00609b70
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
jmp 0x5d84c6
push eax
mov eax, 0x2f
push eax
push eax
push 1
call fcn.00609b70
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
jmp 0x5d84c6
push eax
push 0x1f
push 0x101
push 1
call fcn.00609b70
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
jmp 0x5d84c6
push eax
push 0x1f
push 0x103
push 1
call fcn.00609b70
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
jmp 0x5d84c6
push ecx
push eax
push eax
push 1
call fcn.00609b70
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
jmp 0x5d84c6
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, dword [ebp - 0x198]
mov dword [edx + 0x108], eax
mov ebx, dword [ebp - 0x198]
mov eax, dword [ebx + 0x20]
test eax, eax
je 0x5da667
test byte [eax + 0x44], 2
je 0x5da61c
mov edx, 0x26
mov dword [eax + 0x38], edx
mov eax, dword [ebp - 0x198]
mov ecx, dword [eax + 0x20]
mov dword [ecx + 0x3c], edx
mov ebx, dword [ebp - 0x198]
mov eax, dword [ebx + 0x7c]
test eax, eax
je 0x5da5f7
xor edx, edx
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x198]
mov dword [eax + 0x7c], edx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
mov eax, 0x26
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
movzx edx, byte [ebx + 0x1ae]
mov eax, 0x26
and edx, 0x10
movzx ecx, byte [ebx + 0x1a4]
push eax
shr edx, 1
and ecx, 7
push eax
or ecx, edx
push ecx
push 0xffffffffffffffff
push ebx
call fcn.0061aa20
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
push ebx
mov eax, 0x26
push eax
push eax
push 1
call fcn.00609b70
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
jmp 0x5d84c6
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
je 0x5da6b6
mov eax, 0xffffffff
mov dword [ebp - 0x1a4], eax
mov dword [ebp - 0x1a0], eax
jmp 0x5da59f
mov ecx, dword [ebp - 0x1a4]
mov edx, dword [ebp - 0x1a0]
jmp 0x5d9036
mov ebx, dword [edi + 0x168]
test ebx, ebx
mov eax, dword [edi + 0x4c]
jne 0x5da6d9
mov ebx, 0x20000
mov edx, dword [edi + 0x54]
sub edx, eax
mov dword [ebp - 0x1c8], edx
cmp edx, ebx
ja 0x5da714
push 0
lea edx, [ebp - 0x1c4]
push edx
push dword [ebp - 0x1c8]
push eax
push dword [edi + 0x104]
call dword [sym.imp.KERNEL32.dll_WriteFile]
mov ecx, 0xffffffff
test eax, eax
je 0x5da780
mov ecx, 1
jmp 0x5da780
mov esi, edx
mov dword [ebp - 0x1c0], edi
mov edi, eax
push 0
mov ecx, dword [ebp - 0x1c0]
lea edx, [ebp - 0x1c4]
push edx
push ebx
push edi
push dword [ecx + 0x104]
call dword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x5da74c
mov edi, dword [ebp - 0x1c0]
mov ecx, 0xffffffff
jmp 0x5da780
mov edx, dword [ebp - 0x1c0]
mov eax, dword [ebp - 0x1c4]
sub esi, eax
add edi, eax
mov ecx, dword [edx + 0x168]
test ecx, ecx
jne 0x5da76b
mov ecx, 0x20000
cmp esi, ecx
jae 0x5da771
mov ebx, esi
test esi, esi
je 0x5da779
test eax, eax
ja 0x5da71e
mov edi, edx
mov ecx, 1
mov eax, dword [ebp - 0x1c8]
xor esi, esi
cdq
add eax, dword [edi + 0xe0]
mov ebx, dword [edi + 0x4c]
mov dword [edi + 0x54], ebx
adc edx, dword [edi + 0xe4]
add ebx, dword [edi + 0x118]
and byte [edi + 0x1a5], 0xfb
mov dword [edi + 0x58], ebx
mov dword [edi + 0xc8], esi
mov dword [edi + 0xcc], esi
mov dword [edi + 0xe0], eax
mov dword [edi + 0xe4], edx
mov dword [edi + 0xd8], eax
mov dword [edi + 0xdc], edx
cmp ecx, 0xffffffff
je 0x5da7df
mov edi, dword [ebp - 0x198]
jmp 0x5d8ff8
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [edi + 0x108], eax
mov ebx, dword [ebp - 0x198]
mov eax, dword [ebx + 0x20]
test eax, eax
je 0x5da89f
test byte [eax + 0x44], 2
je 0x5da854
mov edx, 0x26
mov dword [eax + 0x38], edx
mov eax, dword [ebp - 0x198]
mov ecx, dword [eax + 0x20]
mov dword [ecx + 0x3c], edx
mov ebx, dword [ebp - 0x198]
mov eax, dword [ebx + 0x7c]
test eax, eax
je 0x5da82f
mov dword [eax + 4], esi
mov eax, dword [ebp - 0x198]
mov dword [eax + 0x7c], esi
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
mov eax, 0x26
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
movzx edx, byte [ebx + 0x1ae]
mov eax, 0x26
and edx, 0x10
movzx ecx, byte [ebx + 0x1a4]
push eax
shr edx, 1
and ecx, 7
push eax
or ecx, edx
push ecx
push 0xffffffffffffffff
push ebx
call fcn.0061aa20
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
push ebx
mov eax, 0x26
push eax
push eax
push 1
call fcn.00609b70
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
jmp 0x5d84c6
push edi
mov eax, 0x26
push eax
push eax
push 1
call fcn.00609b70
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
jmp 0x5d84c6
push ecx
push eax
push eax
push 1
call fcn.00609b70
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
jmp 0x5d84c6
push 5
push dword [ebp - 0x194]
lea eax, [ebp - 0x198]
push eax
push 0xfffffffffffffffa
call fcn.00611150
mov esi, eax
add esp, 0x10
test esi, esi
je 0x5d84df
movzx ecx, byte [ebp + 0x13]
lea edx, [ebp + 0x20]
and ecx, 0x80
shr ecx, 7
mov dword [ebp - 0x1c8], ecx
je 0x5da99f
lea edx, [ebp + 0x23]
and edx, 0xfffffffc
add edx, 4
mov eax, dword [edx - 4]
jmp 0x5da9a1
xor eax, eax
mov ecx, eax
shr ecx, 0xf
movzx edi, byte [ebp + 0x10]
and ecx, 1
and edi, 1
mov dword [ebp - 0x1c4], ecx
or edi, ecx
je 0x5daa05
cmp dword [ebp - 0x1c8], 0
je 0x5da9e2
test al, 0x10
je 0x5da9e2
add edx, 3
and edx, 0xfffffffc
mov ecx, dword [edx]
add edx, 7
and edx, 0xfffffffc
cmp byte [ecx], 0x38
mov ebx, dword [edx]
jne 0x5da9e2
cmp byte [ecx + 2], 0x4e
je 0x5daa19
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
movzx eax, si
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
push str.unknown
push 0xfffffffffffffffb
push 2
push esi
call fcn.0060b140
jmp 0x5d84dc
lea edx, [ebp - 0x1c8]
push edx
push 0xfffffffffffffffb
call fcn.00612690
add esp, 8
test eax, eax
jne 0x5da9e2
mov edi, dword [ebp - 0x1c8]
movzx edx, byte [ebp + 0x10]
and edx, 1
and byte [edi + 0x1ad], 0xf7
mov edi, dword [ebp - 0x1c8]
movzx ecx, byte [edi + 0x1a4]
and ecx, 0xfffffffe
or ecx, edx
mov byte [edi + 0x1a4], cl
mov edi, dword [ebp - 0x1c8]
mov ecx, dword [ebp - 0x1c4]
shl ecx, 4
movzx edx, byte [edi + 0x1ae]
and edx, 0xffffffef
or edx, ecx
mov byte [edi + 0x1ae], dl
mov ecx, dword [ebp - 0x1c8]
mov edx, dword [ebx]
mov dword [ecx + 0x114], edx
mov edx, dword [ebp - 0x1c8]
mov ebx, dword [ebx + 4]
mov dword [edx + 0x9c], ebx
mov ecx, dword [ebp - 0x1c8]
mov edx, dword [ecx + 0x20]
test edx, edx
je 0x5dab41
test byte [edx + 0x44], 2
je 0x5daafb
mov dword [edx + 0x38], esi
mov edx, dword [ebp - 0x1c8]
mov ecx, dword [edx + 0x20]
mov dword [ecx + 0x3c], esi
mov ebx, dword [ebp - 0x1c8]
mov edx, dword [ebx + 0x7c]
test edx, edx
je 0x5daad9
xor ecx, ecx
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x1c8]
mov dword [edx + 0x7c], ecx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
mov eax, esi
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
movzx eax, byte [ecx + 0x1ae]
and eax, 0x10
movzx edx, byte [ecx + 0x1a4]
push esi
shr eax, 1
and edx, 7
push esi
or edx, eax
push edx
push 0xffffffffffffffff
push ecx
call fcn.0061aa20
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
push ecx
push esi
push esi
push 0
call fcn.00609b70
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5d9822
jmp 0x5d84c6