Function at 0x5f2d90
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push esi
push edi
push ebx
sub esp, 0x1bc
lea ecx, [ebp - 0x19c]
mov edx, dword [ebp + 8]
mov eax, dword [ebp + 0x14]
mov dword [ecx + 4], edx
mov dword [ecx + 8], eax
mov eax, dword [0x7adbc0]
xor eax, ebp
push 1
push edx
push ecx
mov ebx, dword [ebp + 0xc]
push ebx
mov dword [ebp - 0x10], eax
call fcn.00611150
mov edi, eax
add esp, 0x10
test edi, edi
je 0x5f2e7b
movzx ecx, byte [ebp + 0x13]
lea edx, [ebp + 0x1c]
and ecx, 0x80
shr ecx, 7
mov dword [ebp - 0x1c8], ecx
je 0x5f2df8
lea edx, [ebp + 0x1f]
and edx, 0xfffffffc
add edx, 4
mov eax, dword [edx - 4]
jmp 0x5f2dfa
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 0x5f2e62
cmp dword [ebp - 0x1c8], 0
je 0x5f2e3f
test al, 0x10
je 0x5f2e3f
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 0x5f2e3f
cmp byte [ecx + 2], 0x4e
je 0x5f3978
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
movzx eax, di
cmp ecx, dword [0x7adbc0]
jne 0x5f3a9b
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 ecx, dword [ebp - 0x19c]
jmp 0x5f2e89
mov ecx, dword [ebp - 0x19c]
test ecx, ecx
je 0x5f2dd2
movzx eax, byte [ebp + 0x10]
mov esi, eax
movzx edx, byte [ecx + 0x1a4]
and esi, 1
and edx, 0xfffffffe
and eax, 2
or edx, esi
mov byte [ecx + 0x1a4], dl
mov ebx, dword [ebp - 0x19c]
movzx edi, byte [ebp + 0x12]
shr edi, 5
and edi, 1
movzx ecx, byte [ebx + 0x1a4]
shl edi, 2
and ecx, 0xfffffffb
or ecx, edi
mov byte [ebx + 0x1a4], cl
xor ebx, ebx
mov ecx, dword [ebp - 0x19c]
movzx edx, byte [ecx + 0x1a4]
and edx, 0xfffffffd
or edx, eax
mov byte [ecx + 0x1a4], dl
mov eax, dword [ebp - 0x19c]
mov dword [eax + 0x9c], ebx
mov esi, dword [ebp - 0x19c]
mov dword [esi + 0x114], ebx
mov edi, dword [ebp - 0x19c]
movzx ebx, byte [ebp + 0x13]
and byte [edi + 0x1ad], 0xf7
mov ecx, dword [ebp - 0x19c]
mov eax, dword [ecx + 0xd8]
mov edx, dword [ecx + 0xdc]
mov dword [ecx + 0xd0], eax
mov dword [ecx + 0xd4], edx
mov eax, dword [ebp - 0x19c]
test ebx, 0x80
je 0x5f30d3
lea edx, [ebp + 0x1f]
and edx, 0xfffffffc
lea ecx, [edx + 4]
mov ebx, dword [ecx - 4]
test eax, eax
je 0x5f30d5
test bl, 0x20
je 0x5f2f65
or byte [eax + 0x1ab], 0x40
mov eax, dword [ebp - 0x19c]
and byte [eax + 0x1ad], 0xbf
test ebx, 0x2000
je 0x5f2f81
mov eax, dword [ebp - 0x19c]
or byte [eax + 0x1ad], 0x40
mov eax, dword [ebp - 0x19c]
and byte [eax + 0x1ad], 0x7f
test ebx, 0x4000
je 0x5f2fa3
mov eax, dword [ebp - 0x19c]
or byte [eax + 0x1ad], 0x80
mov eax, dword [ebp - 0x19c]
and byte [eax + 0x1ae], 0xef
test ebx, 0x8000
je 0x5f2fc5
mov eax, dword [ebp - 0x19c]
or byte [eax + 0x1ae], 0x10
mov eax, dword [ebp - 0x19c]
and byte [eax + 0x1ae], 0xdf
test ebx, 0x10000
je 0x5f2fe7
mov eax, dword [ebp - 0x19c]
or byte [eax + 0x1ae], 0x20
mov eax, dword [ebp - 0x19c]
and byte [eax + 0x1ae], 0xbf
test ebx, 0x20000
je 0x5f3009
mov eax, dword [ebp - 0x19c]
or byte [eax + 0x1ae], 0x40
mov eax, dword [ebp - 0x19c]
and byte [eax + 0x1ae], 0x7f
test ebx, 0x40000
je 0x5f302b
mov eax, dword [ebp - 0x19c]
or byte [eax + 0x1ae], 0x80
mov eax, dword [ebp - 0x19c]
and byte [eax + 0x1af], 0xfe
test ebx, 0x80000
je 0x5f304d
mov eax, dword [ebp - 0x19c]
or byte [eax + 0x1af], 1
test bl, 0x10
je 0x5f30cb
add edx, 7
and edx, 0xfffffffc
mov esi, dword [edx]
add edx, 7
and edx, 0xfffffffc
cmp byte [esi], 0x38
mov eax, dword [edx]
mov dword [ebp - 0x1c8], eax
je 0x5f46e6
cmp byte [esi], 0xb
je 0x5f42f0
cmp byte [esi], 0x38
je 0x5f4188
cmp byte [esi], 0x38
je 0x5f404a
cmp byte [esi], 0x38
je 0x5f3ede
cmp byte [esi], 0x38
je 0x5f3d3b
cmp byte [esi], 0x38
je 0x5f3bfd
cmp byte [esi], 0x38
je 0x5f3ac6
cmp byte [esi], 1
je 0x5f30cb
push 0x4c4
push str.for_rseq.c
push 2
push 8
call fcn.0060b140
add esp, 0x10
mov eax, dword [ebp - 0x19c]
jmp 0x5f30d5
xor ebx, ebx
mov ecx, ebx
mov esi, ebx
shr ecx, 0xf
and ecx, 1
movzx edx, byte [eax + 0x1ae]
shl ecx, 4
and edx, 0xffffffef
or edx, ecx
mov byte [eax + 0x1ae], dl
mov eax, dword [ebp - 0x19c]
shr esi, 0xa
mov dword [ebp - 0x1c0], esi
test byte [eax + 0x1a1], 0x20
je 0x5f4fd7
test eax, eax
je 0x5f311f
movzx edx, word [eax + 0x18a]
test edx, edx
jg 0x5f312c
and byte [eax + 0x1ac], 0xfe
mov eax, dword [ebp - 0x19c]
test byte [eax + 0x1a2], 0x40
je 0x5f31ec
mov edx, dword [eax + 0x20]
test edx, edx
je 0x5f472b
test byte [edx + 0x44], 2
je 0x5f31a1
mov dword [edx + 0x38], 0x100
mov eax, dword [ebp - 0x19c]
mov edx, dword [eax + 0x20]
mov dword [edx + 0x3c], 0x1f
mov ecx, dword [ebp - 0x19c]
mov eax, dword [ecx + 0x7c]
test eax, eax
je 0x5f317c
xor edx, edx
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x19c]
mov dword [eax + 0x7c], edx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5f3a9b
mov eax, 0x100
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 0x100
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 0x5f3a9b
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
test byte [eax + 0x1a3], 8
je 0x5f32cc
test byte [eax + 0x1a0], 4
jne 0x5f32cc
test eax, eax
je 0x5f3219
movzx edx, word [eax + 0x18a]
test edx, edx
jg 0x5f32cc
mov edx, dword [eax + 0x20]
test edx, edx
je 0x5f475a
test byte [edx + 0x44], 2
je 0x5f3281
mov dword [edx + 0x38], 0x103
mov eax, dword [ebp - 0x19c]
mov edx, dword [eax + 0x20]
mov dword [edx + 0x3c], 0x1f
mov ecx, dword [ebp - 0x19c]
mov eax, dword [ecx + 0x7c]
test eax, eax
je 0x5f325c
xor edx, edx
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x19c]
mov dword [eax + 0x7c], edx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5f3a9b
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 0x5f3a9b
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
movzx edx, byte [eax + 0x1ab]
test dl, 2
jne 0x5f32eb
test dl, 1
jne 0x5f32eb
test dl, 0x10
jne 0x5f32eb
test dl, 8
je 0x5f339b
mov edx, dword [eax + 0x20]
test edx, edx
je 0x5f4789
test byte [edx + 0x44], 2
je 0x5f3350
mov eax, 0x72
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x19c]
mov ecx, dword [edx + 0x20]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x19c]
mov eax, dword [ebx + 0x7c]
test eax, eax
je 0x5f332b
xor edx, edx
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x19c]
mov dword [eax + 0x7c], edx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5f3a9b
mov eax, 0x72
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
movzx ecx, byte [eax + 0x1ae]
mov edx, 0x72
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 0x5f3a9b
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
and byte [eax + 0x1a7], 0xbf
mov eax, dword [ebp - 0x19c]
mov dword [eax + 0x98], 0
mov eax, dword [ebp - 0x19c]
test byte [eax + 0x1a9], 0x40
jne 0x5f33ce
cmp byte [eax + 0x18c], 1
je 0x5f4f99
and byte [eax + 0x1a7], 0xdf
mov ebx, dword [ebp - 0x19c]
test byte [ebx + 0x1a3], 4
je 0x5f345b
test ebx, ebx
je 0x5f33f3
movzx eax, word [ebx + 0x18a]
test eax, eax
jg 0x5f345f
test byte [ebx + 0x1a5], 4
jne 0x5f4a3d
mov edx, dword [ebx + 0x4c]
test byte [ebx + 0x1a4], 8
jne 0x5f47b8
mov eax, dword [ebx + 0xe0]
mov esi, dword [ebx + 0xd0]
mov ecx, dword [ebx + 0xf0]
sub esi, eax
add ecx, edx
add ecx, esi
mov dword [ebx + 0x50], ecx
mov ecx, dword [ebp - 0x19c]
mov edx, dword [ecx + 0x110]
test edx, edx
je 0x5f344f
mov eax, dword [ecx + 0x50]
sub edx, eax
add edx, dword [ecx + 0x4c]
mov dword [ecx + 0xb0], edx
mov ecx, dword [ebp - 0x19c]
mov eax, dword [ecx + 0x50]
mov dword [ecx + 0x64], eax
mov ebx, dword [ebp - 0x19c]
test ebx, ebx
je 0x5f346e
movzx eax, word [ebx + 0x18a]
test eax, eax
jg 0x5f34f4
push dword [ebp + 0x18]
push dword [ebp - 0x194]
push ebx
call fcn.0062ac40
add esp, 0xc
mov edx, dword [ebp - 0x19c]
cmp eax, 0x18
je 0x5f4d60
test eax, eax
jne 0x5f38d7
test byte [edx + 0x1a7], 0x20
jne 0x5f34ba
cmp dword [edx + 0x164], 7
jne 0x5f34ba
movzx eax, byte [edx + 0x1a8]
btr eax, 6
jb 0x5f380f
mov eax, dword [edx + 0x50]
mov dword [edx + 0x5c], eax
mov edx, dword [ebp - 0x19c]
add dword [edx + 0xb8], 1
adc dword [edx + 0xbc], 0
mov ecx, dword [ebp - 0x19c]
and byte [ecx + 0x1a7], 0xfb
mov ebx, dword [ebp - 0x19c]
cmp byte [ebx + 0x18c], 3
je 0x5f3741
push dword [ebp + 0x18]
push dword [ebp - 0x194]
push dword [ebp - 0x198]
mov byte [ebx + 0x196], 0x83
mov eax, dword [ebp - 0x19c]
mov dword [eax + 0x170], 0
call fcn.005f5400
mov ebx, eax
add esp, 0xc
mov esi, dword [ebp - 0x19c]
movzx edx, byte [esi + 0x1a7]
btr edx, 5
jae 0x5f371f
movzx ecx, word [esi + 0x18a]
test ecx, ecx
jg 0x5f371f
xor ecx, ecx
push ecx
push ecx
mov byte [esi + 0x1a7], dl
push dword [ebp - 0x19c]
call fcn.0062ac40
add esp, 0xc
test eax, eax
je 0x5f3611
mov ecx, dword [ebp - 0x19c]
mov edx, dword [ecx + 0x20]
test edx, edx
je 0x5f4c58
test byte [edx + 0x44], 2
je 0x5f35cb
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x19c]
mov ecx, dword [edx + 0x20]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x19c]
mov edx, dword [ebx + 0x7c]
test edx, edx
je 0x5f35ab
xor ecx, ecx
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x19c]
mov dword [edx + 0x7c], ecx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5f3a9b
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 0x5f3a9b
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
mov ecx, dword [ebp - 0x19c]
mov edx, dword [ecx + 0x50]
mov dword [ecx + 0x5c], edx
mov esi, dword [ebp - 0x19c]
add dword [esi + 0xb8], 1
adc dword [esi + 0xbc], 0
mov edi, dword [ebp - 0x19c]
and byte [edi + 0x1a7], 0xfb
mov edx, dword [ebp - 0x19c]
cmp byte [edx + 0x18c], 3
jne 0x5f371f
mov ecx, dword [edx + 0x5c]
movzx esi, byte [ecx + 1]
shl esi, 8
movzx edi, byte [ecx]
or edi, esi
movsx ecx, di
and ecx, 0xfffffffd
cmp ecx, 1
je 0x5f4cb1
mov eax, dword [edx + 0x20]
test eax, eax
je 0x5f4c82
test byte [eax + 0x44], 2
je 0x5f36d4
mov edx, 0x23
mov dword [eax + 0x38], edx
mov eax, dword [ebp - 0x19c]
mov ecx, dword [eax + 0x20]
mov dword [ecx + 0x3c], edx
mov ebx, dword [ebp - 0x19c]
mov eax, dword [ebx + 0x7c]
test eax, eax
je 0x5f36af
xor edx, edx
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x19c]
mov dword [eax + 0x7c], edx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5f3a9b
mov eax, 0x23
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
movzx ecx, byte [edx + 0x1ae]
mov eax, 0x23
and ecx, 0x10
movzx ebx, byte [edx + 0x1a4]
push eax
shr ecx, 1
and ebx, 7
push eax
or ebx, ecx
push ebx
push 0xffffffffffffffff
push edx
call fcn.0061aa20
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5f3a9b
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5f3a9b
mov eax, ebx
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
mov eax, dword [ebx + 0x5c]
movzx edx, byte [eax + 1]
shl edx, 8
movzx ecx, byte [eax]
or ecx, edx
movsx esi, cx
and esi, 0xfffffffd
cmp esi, 1
je 0x5f4ce9
mov eax, dword [ebx + 0x20]
test eax, eax
je 0x5f4cba
test byte [eax + 0x44], 2
je 0x5f37c4
mov edx, 0x23
mov dword [eax + 0x38], edx
mov eax, dword [ebp - 0x19c]
mov ecx, dword [eax + 0x20]
mov dword [ecx + 0x3c], edx
mov ebx, dword [ebp - 0x19c]
mov eax, dword [ebx + 0x7c]
test eax, eax
je 0x5f379f
xor edx, edx
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x19c]
mov dword [eax + 0x7c], edx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5f3a9b
mov eax, 0x23
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
movzx edx, byte [ebx + 0x1ae]
mov eax, 0x23
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 0x5f3a9b
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
mov byte [edx + 0x1a8], al
mov ebx, dword [ebp - 0x19c]
mov eax, dword [ebx + 0x50]
cmp byte [eax], 0x4b
je 0x5f4d27
mov eax, dword [ebx + 0x20]
test eax, eax
je 0x5f4cf8
test byte [eax + 0x44], 2
je 0x5f388c
mov edx, 0x25d
mov dword [eax + 0x38], edx
mov eax, dword [ebp - 0x19c]
mov ecx, dword [eax + 0x20]
mov dword [ecx + 0x3c], edx
mov ebx, dword [ebp - 0x19c]
mov eax, dword [ebx + 0x7c]
test eax, eax
je 0x5f3867
xor edx, edx
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x19c]
mov dword [eax + 0x7c], edx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5f3a9b
mov eax, 0x25d
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
movzx edx, byte [ebx + 0x1ae]
mov eax, 0x25d
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 0x5f3a9b
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
mov ecx, dword [edx + 0x20]
test ecx, ecx
je 0x5f4d36
test byte [ecx + 0x44], 2
je 0x5f3932
mov dword [ecx + 0x38], eax
mov edx, dword [ebp - 0x19c]
mov ecx, dword [edx + 0x20]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x19c]
mov edx, dword [ebx + 0x7c]
test edx, edx
je 0x5f3912
xor ecx, ecx
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x19c]
mov dword [edx + 0x7c], ecx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5f3a9b
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
push eax
push eax
movzx eax, byte [edx + 0x1ae]
and eax, 0x10
movzx ecx, byte [edx + 0x1a4]
shr eax, 1
and ecx, 7
or ecx, eax
push ecx
push 0xffffffffffffffff
push edx
call fcn.0061aa20
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5f3a9b
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 0x5f2e3f
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 0x5f3aa0
test byte [edx + 0x44], 2
je 0x5f3a59
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 0x5f3a3b
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 0x5f3a9b
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 0x5f3a9b
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 0x5f3a9b
jmp 0x5f2e5a
cmp byte [esi + 2], 0x53
jne 0x5f30b0
push 3
mov edx, dword [ebp - 0x1c8]
lea eax, [ebp - 0x1a0]
push eax
push 0x53
push dword [edx]
push dword [edx + 4]
call fcn.005e9520
add esp, 0x14
test eax, eax
jne 0x5f3b2c
mov edi, dword [ebp - 0x19c]
add esi, 4
movzx eax, byte [edi + 0x19b]
mov byte [edi + 0x19c], al
mov edx, dword [ebp - 0x19c]
or byte [edx + 0x1ab], 0x20
mov eax, dword [ebp - 0x19c]
mov ecx, dword [ebp - 0x1a0]
mov byte [eax + 0x19b], cl
jmp 0x5f30b0
mov ecx, dword [ebp - 0x19c]
mov edx, dword [ecx + 0x20]
test edx, edx
je 0x5f3bd3
test byte [edx + 0x44], 2
je 0x5f3b8d
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x19c]
mov ecx, dword [edx + 0x20]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x19c]
mov edx, dword [ebx + 0x7c]
test edx, edx
je 0x5f3b6d
xor ecx, ecx
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x19c]
mov dword [edx + 0x7c], ecx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5f3a9b
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 0x5f3a9b
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 0x5f3a9b
jmp 0x5f2e5a
cmp byte [esi + 2], 0x51
jne 0x5f30a7
push 3
mov edx, dword [ebp - 0x1c8]
lea eax, [ebp - 0x1a0]
push eax
push 0x51
push dword [edx]
push dword [edx + 4]
call fcn.005e9520
add esp, 0x14
test eax, eax
jne 0x5f3c6a
mov edi, dword [ebp - 0x19c]
add esi, 4
add dword [ebp - 0x1c8], 8
movzx eax, byte [edi + 0x197]
mov byte [edi + 0x198], al
mov edx, dword [ebp - 0x19c]
or byte [edx + 0x1ab], 0x10
mov eax, dword [ebp - 0x19c]
mov ecx, dword [ebp - 0x1a0]
mov byte [eax + 0x197], cl
jmp 0x5f30a7
mov ecx, dword [ebp - 0x19c]
mov edx, dword [ecx + 0x20]
test edx, edx
je 0x5f3d11
test byte [edx + 0x44], 2
je 0x5f3ccb
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x19c]
mov ecx, dword [edx + 0x20]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x19c]
mov edx, dword [ebx + 0x7c]
test edx, edx
je 0x5f3cab
xor ecx, ecx
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x19c]
mov dword [edx + 0x7c], ecx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5f3a9b
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 0x5f3a9b
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 0x5f3a9b
jmp 0x5f2e5a
cmp byte [esi + 2], 0x3c
jne 0x5f309e
test ebx, 0x80000
je 0x5f3d57
test ebx, 0x20000
jne 0x5f3d5d
jmp 0x5f3d6c
test byte [ebp + 0x12], 4
jne 0x5f3d6c
push 0
push 0x2fc
call fcn.0060b140
add esp, 8
push 3
mov edx, dword [ebp - 0x1c8]
lea eax, [ebp - 0x1a0]
push eax
push 0x3c
push dword [edx]
push dword [edx + 4]
call fcn.005e9520
add esp, 0x14
test eax, eax
jne 0x5f3e0d
mov ecx, dword [ebp - 0x19c]
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 edi, dword [ebp - 0x19c]
or byte [edi + 0x1ab], 8
mov eax, dword [ebp - 0x1a0]
cmp eax, 2
jne 0x5f3dee
mov ecx, dword [ebp - 0x19c]
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 0x5f3dfe
cmp eax, 1
mov eax, dword [ebp - 0x19c]
and byte [eax + 0x1a6], 0xfd
add dword [ebp - 0x1c8], 8
add esi, 4
jmp 0x5f309e
mov ecx, dword [ebp - 0x19c]
mov edx, dword [ecx + 0x20]
test edx, edx
je 0x5f3eb4
test byte [edx + 0x44], 2
je 0x5f3e6e
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x19c]
mov ecx, dword [edx + 0x20]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x19c]
mov edx, dword [ebx + 0x7c]
test edx, edx
je 0x5f3e4e
xor ecx, ecx
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x19c]
mov dword [edx + 0x7c], ecx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5f3a9b
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 0x5f3a9b
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 0x5f3a9b
jmp 0x5f2e5a
cmp byte [esi + 2], 0x3b
jne 0x5f3095
push 3
mov edx, dword [ebp - 0x1c8]
lea eax, [ebp - 0x1a0]
push eax
push 0x3b
push dword [edx]
push dword [edx + 4]
call fcn.005e9520
add esp, 0x14
test eax, eax
jne 0x5f3f79
mov edx, dword [ebp - 0x19c]
movzx eax, byte [edx + 0x191]
mov byte [edx + 0x192], al
mov ecx, dword [ebp - 0x19c]
or byte [ecx + 0x1ab], 4
mov eax, dword [ebp - 0x1a0]
cmp eax, 2
je 0x5f3f5d
cmp eax, 1
jne 0x5f3f49
mov eax, dword [ebp - 0x19c]
mov byte [eax + 0x191], 0x27
jmp 0x5f3f6a
cmp eax, 3
jne 0x5f3f5d
mov eax, dword [ebp - 0x19c]
mov byte [eax + 0x191], 0x22
jmp 0x5f3f6a
mov eax, dword [ebp - 0x19c]
mov byte [eax + 0x191], 0
add dword [ebp - 0x1c8], 8
add esi, 4
jmp 0x5f3095
mov ecx, dword [ebp - 0x19c]
mov edx, dword [ecx + 0x20]
test edx, edx
je 0x5f4020
test byte [edx + 0x44], 2
je 0x5f3fda
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x19c]
mov ecx, dword [edx + 0x20]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x19c]
mov edx, dword [ebx + 0x7c]
test edx, edx
je 0x5f3fba
xor ecx, ecx
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x19c]
mov dword [edx + 0x7c], ecx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5f3a9b
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 0x5f3a9b
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 0x5f3a9b
jmp 0x5f2e5a
cmp byte [esi + 2], 0x52
jne 0x5f308c
push 3
mov edx, dword [ebp - 0x1c8]
lea eax, [ebp - 0x1a0]
push eax
push 0x52
push dword [edx]
push dword [edx + 4]
call fcn.005e9520
add esp, 0x14
test eax, eax
jne 0x5f40b7
mov edi, dword [ebp - 0x19c]
add esi, 4
add dword [ebp - 0x1c8], 8
movzx eax, byte [edi + 0x199]
mov byte [edi + 0x19a], al
mov edx, dword [ebp - 0x19c]
or byte [edx + 0x1ab], 2
mov eax, dword [ebp - 0x19c]
mov ecx, dword [ebp - 0x1a0]
mov byte [eax + 0x199], cl
jmp 0x5f308c
mov ecx, dword [ebp - 0x19c]
mov edx, dword [ecx + 0x20]
test edx, edx
je 0x5f415e
test byte [edx + 0x44], 2
je 0x5f4118
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x19c]
mov ecx, dword [edx + 0x20]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x19c]
mov edx, dword [ebx + 0x7c]
test edx, edx
je 0x5f40f8
xor ecx, ecx
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x19c]
mov dword [edx + 0x7c], ecx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5f3a9b
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 0x5f3a9b
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 0x5f3a9b
jmp 0x5f2e5a
cmp byte [esi + 2], 6
jne 0x5f3083
push 3
mov edx, dword [ebp - 0x1c8]
lea eax, [ebp - 0x1a0]
push eax
push 6
push dword [edx]
push dword [edx + 4]
call fcn.005e9520
add esp, 0x14
test eax, eax
jne 0x5f421f
mov ecx, dword [ebp - 0x19c]
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 edi, dword [ebp - 0x19c]
or byte [edi + 0x1ab], 1
mov eax, dword [ebp - 0x1a0]
cmp eax, 1
je 0x5f4203
cmp eax, 2
jne 0x5f4203
mov eax, dword [ebp - 0x19c]
or byte [eax + 0x1a3], 0x20
jmp 0x5f4210
mov eax, dword [ebp - 0x19c]
and byte [eax + 0x1a3], 0xdf
add dword [ebp - 0x1c8], 8
add esi, 4
jmp 0x5f3083
mov ecx, dword [ebp - 0x19c]
mov edx, dword [ecx + 0x20]
test edx, edx
je 0x5f42c6
test byte [edx + 0x44], 2
je 0x5f4280
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x19c]
mov ecx, dword [edx + 0x20]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x19c]
mov edx, dword [ebx + 0x7c]
test edx, edx
je 0x5f4260
xor ecx, ecx
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x19c]
mov dword [edx + 0x7c], ecx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5f3a9b
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 0x5f3a9b
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 0x5f3a9b
jmp 0x5f2e5a
cmp byte [esi + 2], 0x4f
jne 0x5f307a
mov eax, dword [ebp - 0x19c]
test byte [eax + 0x1a3], 4
jne 0x5f447a
test byte [eax + 0x1a1], 0x20
jne 0x5f43ca
mov edx, dword [eax + 0x20]
test edx, edx
je 0x5f457d
test byte [edx + 0x44], 2
je 0x5f437f
mov eax, 0x6d
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x19c]
mov ecx, dword [edx + 0x20]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x19c]
mov eax, dword [ebx + 0x7c]
test eax, eax
je 0x5f435a
xor edx, edx
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x19c]
mov dword [eax + 0x7c], edx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5f3a9b
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 0x5f3a9b
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
mov edx, dword [eax + 0x20]
test edx, edx
je 0x5f45ac
test byte [edx + 0x44], 2
je 0x5f4432
mov dword [edx + 0x38], 0x6e
mov eax, dword [ebp - 0x19c]
mov edx, dword [eax + 0x20]
mov dword [edx + 0x3c], 0x1f
mov ecx, dword [ebp - 0x19c]
mov eax, dword [ecx + 0x7c]
test eax, eax
je 0x5f440d
xor edx, edx
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x19c]
mov dword [eax + 0x7c], edx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5f3a9b
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 0x5f3a9b
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
test eax, eax
je 0x5f4489
movzx edx, word [eax + 0x18a]
test edx, edx
jg 0x5f44cd
mov edx, dword [ebp - 0x1c8]
mov ecx, dword [edx]
add ecx, 0xffffffff
mov edi, dword [edx + 4]
adc edi, 0xffffffff
add edx, 8
mov dword [eax + 0xd0], ecx
mov dword [eax + 0xd4], edi
mov eax, dword [ebp - 0x19c]
mov dword [ebp - 0x1c8], edx
xor edx, edx
mov ecx, dword [eax + 0xd4]
sub ecx, edx
jl 0x5f45d8
add esi, 4
jmp 0x5f307a
mov edx, dword [eax + 0x20]
test edx, edx
je 0x5f46b7
test byte [edx + 0x44], 2
je 0x5f4532
mov eax, 0x10f
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x19c]
mov ecx, dword [edx + 0x20]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x19c]
mov eax, dword [ebx + 0x7c]
test eax, eax
je 0x5f450d
xor edx, edx
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x19c]
mov dword [eax + 0x7c], edx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5f3a9b
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 0x5f3a9b
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 0x5f3a9b
jmp 0x5f2e5a
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 0x5f3a9b
jmp 0x5f2e5a
mov edx, dword [eax + 0x20]
test edx, edx
je 0x5f4688
test byte [edx + 0x44], 2
je 0x5f463d
mov eax, 0x6f
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x19c]
mov ecx, dword [edx + 0x20]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x19c]
mov eax, dword [ebx + 0x7c]
test eax, eax
je 0x5f4618
xor edx, edx
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x19c]
mov dword [eax + 0x7c], edx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5f3a9b
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 0x5f3a9b
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 0x5f3a9b
jmp 0x5f2e5a
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 0x5f3a9b
jmp 0x5f2e5a
cmp byte [esi + 2], 0x4e
jne 0x5f3071
add esi, 4
mov ecx, dword [ebp - 0x19c]
mov edx, dword [eax]
mov dword [ecx + 0x114], edx
mov edx, dword [ebp - 0x19c]
mov edi, dword [eax + 4]
add eax, 8
mov dword [ebp - 0x1c8], eax
mov dword [edx + 0x9c], edi
mov ecx, dword [ebp - 0x19c]
and byte [ecx + 0x1ad], 0xf7
jmp 0x5f3071
push eax
push 0x1f
push 0x100
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 0x5f3a9b
jmp 0x5f2e5a
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 0x5f3a9b
jmp 0x5f2e5a
push eax
mov eax, 0x72
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 0x5f3a9b
jmp 0x5f2e5a
cmp edx, dword [ebx + 0x68]
je 0x5f4825
mov edi, dword [ebx + 0xd0]
mov eax, dword [ebx + 0xe0]
mov dword [ebp - 0x1bc], edi
sub edi, eax
mov ecx, dword [ebx + 0xd4]
mov esi, dword [ebx + 0xe4]
mov dword [ebp - 0x1c8], ecx
sbb ecx, esi
mov dword [ebp - 0x1c4], esi
mov esi, dword [ebp - 0x1bc]
jl 0x5f4825
mov ecx, dword [ebx + 0xe8]
mov edi, esi
add ecx, eax
mov dword [ebp - 0x1c0], ebx
mov ebx, dword [ebx + 0xec]
adc ebx, dword [ebp - 0x1c4]
sub edi, ecx
mov ecx, dword [ebp - 0x1c8]
sbb ecx, ebx
mov ebx, dword [ebp - 0x1c0]
jl 0x5f341c
push 0
mov edx, dword [ebx + 0xd0]
lea eax, [ebp - 0x1b0]
push eax
mov ecx, dword [ebx + 0xd4]
push edx
push dword [ebx + 0x104]
mov dword [eax - 4], edx
mov dword [eax], ecx
call dword [sym.imp.KERNEL32.dll_SetFilePointer]
mov ecx, eax
mov dword [ebp - 0x1b4], ecx
cmp ecx, 0xffffffff
je 0x5f4a0c
mov edx, dword [ebp - 0x1b0]
mov eax, 0xffffffff
sub ecx, eax
sub edx, eax
or ecx, edx
je 0x5f4915
mov ebx, dword [ebp - 0x19c]
mov edx, dword [ebx + 0xd0]
mov ecx, dword [ebx + 0xd4]
mov dword [ebx + 0xd8], edx
mov dword [ebx + 0xdc], ecx
mov eax, dword [ebp - 0x19c]
mov esi, dword [eax + 0xd0]
mov edi, dword [eax + 0xd4]
mov dword [eax + 0xe0], esi
mov dword [eax + 0xe4], edi
xor eax, eax
mov edx, dword [ebp - 0x19c]
mov dword [edx + 0xf0], eax
mov dword [edx + 0xf4], eax
mov ecx, dword [ebp - 0x19c]
mov dword [ecx + 0xe8], eax
mov dword [ecx + 0xec], eax
mov esi, dword [ebp - 0x19c]
mov ebx, dword [esi + 0xe8]
mov dword [esi + 0x110], ebx
mov edi, dword [ebp - 0x19c]
and byte [edi + 0x1a5], 0xfd
mov edx, dword [ebp - 0x19c]
mov dword [edx + 0xb0], eax
mov ecx, dword [ebp - 0x19c]
mov dword [ecx + 0x64], eax
mov ebx, dword [ebp - 0x19c]
jmp 0x5f345b
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, dword [ebp - 0x19c]
mov dword [edx + 0x108], eax
mov ebx, dword [ebp - 0x19c]
mov eax, dword [ebx + 0x20]
test eax, eax
je 0x5f49dd
test byte [eax + 0x44], 2
je 0x5f4992
mov edx, 0x27
mov dword [eax + 0x38], edx
mov eax, dword [ebp - 0x19c]
mov ecx, dword [eax + 0x20]
mov dword [ecx + 0x3c], edx
mov ebx, dword [ebp - 0x19c]
mov eax, dword [ebx + 0x7c]
test eax, eax
je 0x5f496d
xor edx, edx
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x19c]
mov dword [eax + 0x7c], edx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5f3a9b
mov eax, 0x27
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
movzx edx, byte [ebx + 0x1ae]
mov eax, 0x27
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 0x5f3a9b
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
push ebx
mov eax, 0x27
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 0x5f3a9b
jmp 0x5f2e5a
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
je 0x5f4a2c
mov eax, 0xffffffff
mov dword [ebp - 0x1b4], eax
mov dword [ebp - 0x1b0], eax
jmp 0x5f4915
mov ecx, dword [ebp - 0x1b4]
mov edx, dword [ebp - 0x1b0]
jmp 0x5f4863
mov esi, dword [ebx + 0x168]
test esi, esi
mov eax, dword [ebx + 0x4c]
jne 0x5f4a4f
mov esi, 0x20000
mov edx, dword [ebx + 0x54]
sub edx, eax
mov dword [ebp - 0x1c4], edx
cmp edx, esi
ja 0x5f4a90
push 0
lea edx, [ebp - 0x1ac]
push edx
push dword [ebp - 0x1c4]
push eax
push dword [ebx + 0x104]
call dword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
mov eax, 0xffffffff
je 0x5f4a88
mov eax, 1
mov dword [ebp - 0x1c8], eax
jmp 0x5f4b06
mov edi, edx
mov dword [ebp - 0x1c0], ebx
mov ebx, eax
push 0
mov ecx, dword [ebp - 0x1c0]
lea edx, [ebp - 0x1ac]
push edx
push esi
push ebx
push dword [ecx + 0x104]
call dword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x5f4acd
mov ebx, dword [ebp - 0x1c0]
mov dword [ebp - 0x1c8], 0xffffffff
jmp 0x5f4b06
mov edx, dword [ebp - 0x1c0]
mov eax, dword [ebp - 0x1ac]
sub edi, eax
add ebx, eax
mov ecx, dword [edx + 0x168]
test ecx, ecx
jne 0x5f4aec
mov ecx, 0x20000
cmp edi, ecx
jae 0x5f4af2
mov esi, edi
test edi, edi
je 0x5f4afa
test eax, eax
ja 0x5f4a9a
mov ebx, edx
mov dword [ebp - 0x1c8], 1
mov eax, dword [ebp - 0x1c4]
xor esi, esi
cdq
add eax, dword [ebx + 0xe0]
mov ecx, dword [ebx + 0x4c]
mov dword [ebx + 0x54], ecx
adc edx, dword [ebx + 0xe4]
add ecx, dword [ebx + 0x118]
and byte [ebx + 0x1a5], 0xfb
mov dword [ebx + 0x58], ecx
mov dword [ebx + 0xc8], esi
mov dword [ebx + 0xcc], esi
mov dword [ebx + 0xe0], eax
mov dword [ebx + 0xe4], edx
mov dword [ebx + 0xd8], eax
mov dword [ebx + 0xdc], edx
cmp dword [ebp - 0x1c8], 0xffffffff
je 0x5f4b69
mov ebx, dword [ebp - 0x19c]
jmp 0x5f3400
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebx + 0x108], eax
mov ebx, dword [ebp - 0x19c]
mov eax, dword [ebx + 0x20]
test eax, eax
je 0x5f4c29
test byte [eax + 0x44], 2
je 0x5f4bde
mov edx, 0x26
mov dword [eax + 0x38], edx
mov eax, dword [ebp - 0x19c]
mov ecx, dword [eax + 0x20]
mov dword [ecx + 0x3c], edx
mov ebx, dword [ebp - 0x19c]
mov eax, dword [ebx + 0x7c]
test eax, eax
je 0x5f4bb9
mov dword [eax + 4], esi
mov eax, dword [ebp - 0x19c]
mov dword [eax + 0x7c], esi
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5f3a9b
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 0x5f3a9b
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 0x5f3a9b
jmp 0x5f2e5a
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 0x5f3a9b
jmp 0x5f2e5a
push edx
mov eax, 0x23
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 0x5f3a9b
jmp 0x5f2e5a
add dword [edx + 0x50], 2
jmp 0x5f371f
push ebx
mov eax, 0x23
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 0x5f3a9b
jmp 0x5f2e5a
add dword [ebx + 0x50], 2
mov ebx, dword [ebp - 0x19c]
jmp 0x5f34f4
push ebx
mov eax, 0x25d
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 0x5f3a9b
jmp 0x5f2e5a
inc eax
mov dword [ebx + 0x50], eax
mov edx, dword [ebp - 0x19c]
jmp 0x5f34ba
push edx
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 0x5f3a9b
jmp 0x5f2e5a
test byte [edx + 0x1a3], 4
jne 0x5f4d90
mov ecx, dword [edx + 0x94]
test ecx, ecx
je 0x5f38d7
cmp byte [ecx + 0x1f], 0
je 0x5f38d7
movzx ecx, word [edx + 0x18a]
test ecx, ecx
jg 0x5f38d7
mov esi, dword [ebp - 0x194]
lea eax, [ebp - 0x190]
push eax
mov edi, dword [ebp + 0x18]
lea edx, [ebp - 0x1c8]
push edx
mov dword [eax - 0x18], esi
lea ecx, [ebp - 0x1a4]
push ecx
mov dword [eax - 0x14], edi
lea ebx, [ebp - 0x1a8]
push ebx
call fcn.0061b040
add esp, 0x10
test eax, eax
je 0x5f4e72
mov ecx, dword [ebp - 0x19c]
mov edx, dword [ecx + 0x20]
test edx, edx
je 0x5f4f40
test byte [edx + 0x44], 2
je 0x5f4e2c
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x19c]
mov ecx, dword [edx + 0x20]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x19c]
mov edx, dword [ebx + 0x7c]
test edx, edx
je 0x5f4e0c
xor ecx, ecx
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x19c]
mov dword [edx + 0x7c], ecx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5f3a9b
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 0x5f3a9b
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
cmp dword [ebp - 0x1c4], 0
je 0x5f4f35
mov ebx, dword [ebp - 0x19c]
mov eax, dword [ebx + 0x20]
test eax, eax
je 0x5f4f6a
test byte [eax + 0x44], 2
je 0x5f4eea
mov edx, 0x18
mov dword [eax + 0x38], edx
mov eax, dword [ebp - 0x19c]
mov ecx, dword [eax + 0x20]
mov dword [ecx + 0x3c], edx
mov ebx, dword [ebp - 0x19c]
mov eax, dword [ebx + 0x7c]
test eax, eax
je 0x5f4ec5
xor edx, edx
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x19c]
mov dword [eax + 0x7c], edx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5f3a9b
mov eax, 0x18
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
movzx edx, byte [ebx + 0x1ae]
mov eax, 0x18
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 0x5f3a9b
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
mov edx, dword [ebp - 0x19c]
jmp 0x5f3497
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 0x5f3a9b
jmp 0x5f2e5a
push ebx
mov eax, 0x18
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 0x5f3a9b
jmp 0x5f2e5a
test byte [eax + 0x1a0], 1
je 0x5f4fb8
test byte [eax + 0x1a3], 8
je 0x5f4fb8
cmp byte [eax + 0x18d], 2
je 0x5f33ce
cmp dword [eax + 0x164], 7
je 0x5f33ce
or byte [eax + 0x1a7], 0x20
mov ebx, dword [ebp - 0x19c]
jmp 0x5f34f4
movzx edx, byte [eax + 0x1a0]
movzx edi, byte [ebp + 0x10]
and edx, 0xfffffffe
shr edi, 7
or edx, edi
mov byte [eax + 0x1a0], dl
movzx esi, byte [ebp + 0x12]
mov edi, dword [ebp - 0x19c]
mov dword [ebp - 0x1c8], esi
shr esi, 2
and esi, 1
movzx eax, byte [edi + 0x1a0]
add esi, esi
and eax, 0xfffffffd
or eax, esi
mov byte [edi + 0x1a0], al
movzx edi, byte [ebp + 0x13]
mov esi, edi
shr esi, 3
and esi, 1
mov edx, dword [ebp - 0x19c]
mov dword [ebp - 0x1c4], ecx
movzx ecx, byte [edx + 0x1a0]
lea eax, [esi*4]
and ecx, 0xfffffffb
or ecx, eax
mov byte [edx + 0x1a0], cl
mov ecx, edi
mov edx, dword [ebp - 0x19c]
shr ecx, 2
and ecx, 1
movzx eax, byte [edx + 0x1a0]
shl ecx, 3
and eax, 0xfffffff7
or eax, ecx
mov byte [edx + 0x1a0], al
mov eax, edi
mov ecx, dword [ebp - 0x19c]
shr eax, 6
and eax, 1
movzx edx, byte [ecx + 0x1a0]
shl eax, 4
and edx, 0xffffffef
or edx, eax
mov byte [ecx + 0x1a0], dl
mov edx, esi
mov ecx, dword [ebp - 0x19c]
shl edx, 5
shl esi, 3
movzx eax, byte [ecx + 0x1a0]
and eax, 0xffffffdf
or eax, edx
mov byte [ecx + 0x1a0], al
mov eax, edi
mov edx, dword [ebp - 0x19c]
shr eax, 4
and eax, 1
movzx ecx, byte [edx + 0x1a9]
shl eax, 2
and ecx, 0xfffffffb
or ecx, eax
mov byte [edx + 0x1a9], cl
mov eax, dword [ebp - 0x19c]
shr edi, 5
and edi, 1
movzx edx, byte [eax + 0x1a9]
and edx, 0xfffffff7
or edx, esi
mov esi, edi
mov byte [eax + 0x1a9], dl
mov edx, dword [ebp - 0x19c]
shl esi, 6
shl edi, 7
movzx eax, byte [edx + 0x1a0]
and eax, 0xffffffbf
or eax, esi
mov byte [edx + 0x1a0], al
mov edx, ebx
mov esi, dword [ebp - 0x19c]
shr edx, 1
and edx, 1
movzx ecx, byte [esi + 0x1a0]
and ecx, 0x7f
or ecx, edi
mov edi, ebx
mov byte [esi + 0x1a0], cl
and edi, 1
mov esi, dword [ebp - 0x19c]
mov ecx, ebx
shl edx, 5
shr ecx, 2
movzx eax, byte [esi + 0x1a1]
and ecx, 3
and eax, 0xfffffffe
add ecx, ecx
or eax, edi
mov byte [esi + 0x1a1], al
mov edi, dword [ebp - 0x19c]
movzx eax, byte [edi + 0x1a9]
and eax, 0xffffffdf
or eax, edx
mov byte [edi + 0x1a9], al
mov edi, ebx
mov esi, dword [ebp - 0x19c]
shr edi, 9
and edi, 1
movzx eax, byte [esi + 0x1a1]
and eax, 0xfffffff9
or eax, ecx
mov byte [esi + 0x1a1], al
mov esi, ebx
mov ecx, dword [ebp - 0x19c]
and esi, 0xffffff80
shl edi, 3
movzx edx, byte [ecx + 0x1ac]
and edx, 0xfffffff7
or edx, edi
mov byte [ecx + 0x1ac], dl
mov edi, dword [ebp - 0x19c]
movzx eax, byte [edi + 0x1ab]
and eax, 0x7f
or eax, esi
mov esi, ebx
mov byte [edi + 0x1ab], al
mov edi, ebx
mov ecx, dword [ebp - 0x19c]
shr esi, 7
and esi, 0xffffff80
movzx edx, byte [ecx + 0x1ad]
and edx, 0x7f
or edx, esi
mov byte [ecx + 0x1ad], dl
mov esi, dword [ebp - 0x19c]
shr edi, 0x10
and edi, 1
movzx eax, byte [esi + 0x1ae]
and eax, 0xffffffef
or eax, dword [ebp - 0x1c4]
mov byte [esi + 0x1ae], al
mov esi, ebx
mov ecx, dword [ebp - 0x19c]
shl edi, 5
shr esi, 0x11
movzx edx, byte [ecx + 0x1ae]
and esi, 1
and edx, 0xffffffdf
or edx, edi
mov byte [ecx + 0x1ae], dl
mov edx, ebx
mov edi, dword [ebp - 0x19c]
shl esi, 6
shr edx, 0xb
movzx eax, byte [edi + 0x1ae]
and edx, 0xffffff80
and eax, 0xffffffbf
or eax, esi
mov byte [edi + 0x1ae], al
mov esi, dword [ebp - 0x19c]
shr ebx, 0x13
and ebx, 1
movzx ecx, byte [esi + 0x1ae]
and ecx, 0x7f
or ecx, edx
mov byte [esi + 0x1ae], cl
mov edx, dword [ebp - 0x19c]
movzx eax, byte [edx + 0x1af]
and eax, 0xfffffffe
or eax, ebx
mov byte [edx + 0x1af], al
mov eax, dword [ebp - 0x19c]
movzx ecx, byte [eax + 0x1ac]
btr ecx, 4
jb 0x5f52b8
mov edx, dword [ebp - 0x1c0]
and edx, 1
shl edx, 4
or ecx, edx
mov byte [eax + 0x1ac], cl
mov eax, dword [ebp - 0x19c]
mov esi, dword [ebp - 0x1c8]
and esi, 1
mov ebx, esi
movzx ecx, byte [eax + 0x1a5]
shl ebx, 5
and ecx, 0xffffffdf
or ecx, ebx
movzx edx, byte [ebp + 0x11]
mov byte [eax + 0x1a5], cl
test esi, esi
jne 0x5f52ec
movsx eax, dl
test eax, eax
je 0x5f5305
cmp eax, 0xffffffff
je 0x5f5305
mov eax, dword [ebp - 0x19c]
or byte [eax + 0x1a5], 0x10
mov ecx, dword [ebp - 0x19c]
mov byte [ecx + 0x190], dl
push 2
mov eax, 1
push eax
push eax
push dword [ebp - 0x19c]
call fcn.005eb2f0
add esp, 0x10
test eax, eax
je 0x5f53cb
mov ecx, dword [ebp - 0x19c]
mov edx, dword [ecx + 0x20]
test edx, edx
je 0x5f53d6
test byte [edx + 0x44], 2
je 0x5f5385
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x19c]
mov ecx, dword [edx + 0x20]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x19c]
mov edx, dword [ebx + 0x7c]
test edx, edx
je 0x5f5365
xor ecx, ecx
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x19c]
mov dword [edx + 0x7c], ecx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x7adbc0]
jne 0x5f3a9b
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 0x5f3a9b
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
mov eax, dword [ebp - 0x19c]
jmp 0x5f3110
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 0x5f3a9b
jmp 0x5f2e5a