Function at 0x4744c0
Capabilities:
Check if file exists
Get file attributes
Get file size

Disassembly:
push ebp
mov ebp, esp
push esi
push edi
push ebx
mov eax, 0x15ac
call fcn.004cf930
xor ecx, ecx
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x1240], eax
mov edx, dword [0x543b10]
xor edx, ebp
mov dword [ebp - 0x10], edx
mov ebx, dword [ebp + 8]
mov esi, dword [ebp + 0x14]
mov dword [ebp - 0x1244], ecx
mov dword [ebp - 0x1248], ecx
mov dword [ebp - 0x15b8], ecx
push 0x180
push 0
lea eax, [ebp - 0x13fc]
push eax
call fcn.004ca8b0
lea eax, [ebp - 0x1248]
push eax
lea edx, [ebp - 0x13fc]
push edx
push dword [ebp + 0x18]
push esi
call fcn.0049b1e0
mov ecx, eax
add esp, 0x1c
mov edi, dword [ebp - 0x13f0]
test edi, edi
jne 0x474586
mov edi, dword [ebp - 0x12d8]
test ecx, ecx
je 0x474548
mov esi, 1
jmp 0x474590
test edi, edi
je 0x4747c2
mov edx, dword [ebp - 0x13fc]
xor eax, eax
mov ecx, dword [ebp - 0x13f8]
mov esi, 1
mov dword [ebp - 0x1254], eax
mov dword [ebp - 0x1250], eax
mov dword [ebp - 0x1274], eax
mov dword [ebp - 0x1268], edx
mov dword [ebp - 0x1264], ecx
jmp 0x47479d
test ecx, ecx
je 0x4747fa
xor esi, esi
mov edx, dword [ebp + 0x10]
mov dword [ebp - 0x15ac], edx
shr edx, 0x18
movzx edx, dl
test edx, 0x80
je 0x4745b1
lea edx, [ebp + 0x1f]
and edx, 0xfffffffc
mov edx, dword [edx]
jmp 0x4745b3
xor edx, edx
shr edx, 0xf
movzx eax, byte [ebp - 0x15ac]
and edx, 1
and eax, 1
or eax, edx
je 0x474741
cmp dword [ebp - 0x12b0], 0
je 0x47471e
lea ebx, [ebp - 0x15b8]
push ebx
push dword [ebp - 0x1240]
mov dword [ebx + 4], edx
mov dword [ebx + 8], ecx
call fcn.0047c800
mov ecx, dword [ebp - 0x15b0]
add esp, 8
mov edx, dword [ebp - 0x15b4]
test eax, eax
jne 0x47471e
mov edi, dword [ebp - 0x15b8]
movzx esi, byte [ebp - 0x15ac]
and esi, 1
movzx ebx, byte [edi + 0x1a4]
and ebx, 0xfffffffe
or ebx, esi
mov byte [edi + 0x1a4], bl
mov esi, dword [ebp - 0x15b8]
shl edx, 4
movzx ebx, byte [esi + 0x1ae]
and ebx, 0xffffffef
or ebx, edx
mov byte [esi + 0x1ae], bl
mov ebx, dword [ebp - 0x15b8]
mov edx, dword [ebp - 0x12ac]
mov dword [ebx + 0x114], edx
mov ebx, dword [ebp - 0x15b8]
mov edx, dword [ebp - 0x12b0]
mov dword [ebx + 0x9c], edx
mov edx, dword [ebp - 0x15b8]
and byte [edx + 0x1ad], 0xf7
mov ebx, dword [ebp - 0x15b8]
mov edx, dword [ebx + 0x20]
test edx, edx
je 0x477bd5
test byte [edx + 0x44], 2
je 0x4746d8
mov dword [edx + 0x38], ecx
mov edx, dword [ebp - 0x15b8]
mov ebx, dword [edx + 0x20]
mov dword [ebx + 0x3c], ecx
mov esi, dword [ebp - 0x15b8]
mov edx, dword [esi + 0x7c]
test edx, edx
je 0x4746b6
xor ebx, ebx
mov dword [edx + 4], ebx
mov edx, dword [ebp - 0x15b8]
mov dword [edx + 0x7c], ebx
mov edx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor edx, ebp
cmp edx, dword [0x543b10]
jne 0x477bc9
mov eax, ecx
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
movzx eax, byte [ebx + 0x1ae]
and eax, 0x10
movzx edx, byte [ebx + 0x1a4]
push ecx
shr eax, 1
and edx, 7
push ecx
or edx, eax
push edx
push 0xffffffffffffffff
push ebx
call fcn.004865b0
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x543b10]
jne 0x477bd0
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
movzx eax, cx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x543b10]
jne 0x477bd0
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
push str.unknown
push dword [ebp - 0x1240]
push 2
push ecx
call fcn.00480060
add esp, 0x10
test edi, edi
je 0x4747c2
mov edx, dword [ebp - 0x13fc]
xor eax, eax
mov ecx, dword [ebp - 0x13f8]
mov dword [ebp - 0x1254], eax
mov dword [ebp - 0x1250], eax
mov dword [ebp - 0x1274], eax
mov ebx, dword [ebp - 0x13f4]
mov eax, dword [ebp - 0x13f0]
mov dword [ebp - 0x1268], edx
mov dword [ebp - 0x1264], ecx
test esi, esi
je 0x4747b4
mov edi, dword [ebp - 0x12d8]
mov eax, dword [ebp - 0x12dc]
mov dword [ebp - 0x1270], eax
mov dword [ebp - 0x126c], edi
jmp 0x474838
mov dword [ebp - 0x126c], eax
mov dword [ebp - 0x1270], ebx
jmp 0x474838
cmp dword [ebp - 0x13f4], 0
je 0x477bfb
xor edx, edx
xor ebx, ebx
mov dword [ebp - 0x125c], ebx
mov ecx, dword [ebp - 0x1244]
mov esi, edx
and esi, 0xfffffffe
cmp esi, 0xfffffffa
jne 0x474d61
test ecx, ecx
jne 0x474c9b
jmp 0x474cbb
mov dword [ebp - 0x126c], edi
xor esi, esi
mov eax, dword [ebp - 0x13f4]
mov edi, dword [ebp - 0x13fc]
mov edx, dword [ebp - 0x13f8]
mov dword [ebp - 0x1254], esi
mov dword [ebp - 0x1250], esi
mov dword [ebp - 0x1274], esi
mov dword [ebp - 0x1270], eax
mov dword [ebp - 0x1268], edi
mov dword [ebp - 0x1264], edx
push 0x1b8
push 0
lea eax, [ebp - 0x15b4]
push eax
call fcn.004ca8b0
add esp, 0xc
movzx edx, byte [ebp + 0x10]
mov edi, edx
movzx ecx, byte [ebp - 0x1414]
and edi, 1
shr edx, 7
and ecx, 0xfffffffe
or ecx, edx
mov dword [ebp - 0x127c], ecx
movzx ecx, byte [ebp + 0x13]
mov ebx, ecx
movzx eax, byte [ebp - 0x1410]
shr ebx, 3
and eax, 0xfffffffe
or eax, edi
and ebx, 1
mov byte [ebp - 0x1410], al
movzx edx, byte [ebp + 0x12]
test ecx, 0x80
je 0x4748a0
lea eax, [ebp + 0x1f]
and eax, 0xfffffffc
mov edi, dword [eax]
jmp 0x4748a2
xor edi, edi
mov dword [ebp - 0x124c], esi
mov esi, ecx
shr esi, 4
and esi, 1
movzx eax, byte [ebp - 0x140b]
shl esi, 2
and eax, 0xfffffffb
shr edx, 1
or eax, esi
mov dword [ebp - 0x1260], eax
mov esi, ecx
shr ecx, 2
and edx, 0xfffffffe
mov eax, dword [ebp - 0x127c]
and eax, 1
or eax, edx
lea edx, [ebx*4]
and eax, 3
or eax, edx
lea edx, [ecx*8]
or eax, edx
and ecx, 0xfffffff0
and eax, 0xf
shr esi, 5
or eax, ecx
mov ecx, ebx
and eax, 0x1f
shl ecx, 5
mov edx, esi
shl edx, 6
or eax, ecx
or eax, edx
shl esi, 7
and eax, 0x7f
or eax, esi
mov esi, edi
mov byte [ebp - 0x1414], al
mov eax, edi
movzx ecx, byte [ebp - 0x1413]
and eax, 1
shr esi, 2
and ecx, 0xfffffffe
or ecx, eax
and esi, 3
mov edx, dword [ebp - 0x1260]
mov eax, edi
shl ebx, 3
and edx, 0xfffffff7
and ecx, 0xfffffff9
add esi, esi
shr eax, 9
or edx, ebx
mov ebx, edi
or ecx, esi
mov byte [ebp - 0x1413], cl
mov ecx, edi
shr ebx, 1
and eax, 1
mov esi, edi
and ebx, 1
shr ecx, 0xa
and edx, 0xffffffdf
mov dword [ebp - 0x15b8], ecx
movzx ecx, byte [ebp - 0x1408]
shl eax, 3
and ecx, 0xfffffff7
shr esi, 7
or ecx, eax
movzx eax, byte [ebp - 0x1407]
and esi, 0xffffff80
shl ebx, 5
and eax, 0x7f
or edx, ebx
or eax, esi
mov byte [ebp - 0x140b], dl
mov edx, edi
mov esi, edi
and edx, 0xffffff80
movzx ebx, byte [ebp - 0x1409]
shr esi, 0xb
and ebx, 0x7f
or ebx, edx
mov edx, esi
mov byte [ebp - 0x1409], bl
and edx, 0xfffffff0
movzx ebx, byte [ebp - 0x1406]
and ebx, 0xf
mov byte [ebp - 0x1407], al
or ebx, edx
mov eax, esi
and ebx, 0x1f
and eax, 0xffffffe0
mov edx, esi
or ebx, eax
and edx, 0xffffffc0
and ebx, 0x3f
and esi, 0xffffff80
or ebx, edx
and ebx, 0x7f
shr edi, 0x13
or ebx, esi
mov byte [ebp - 0x1406], bl
and edi, 1
movzx ebx, byte [ebp - 0x1405]
and ebx, 0xfffffffe
or ebx, edi
mov dword [ebp - 0x1278], ecx
btr ecx, 4
mov byte [ebp - 0x1405], bl
mov esi, dword [ebp - 0x124c]
jb 0x474a2d
mov eax, dword [ebp - 0x15b8]
and eax, 1
shl eax, 4
or ecx, eax
mov byte [ebp - 0x1408], cl
jmp 0x474a39
mov eax, dword [ebp - 0x1278]
mov byte [ebp - 0x1408], al
mov dword [ebp - 0x1490], 0
lea eax, [ebp - 0x1250]
push eax
push 1
mov eax, dword [eax - 0x60]
lea edx, [ebp - 0x1254]
push edx
mov edx, dword [edx - 0x58]
lea ecx, [ebp - 0x121c]
push ecx
mov dword [ebp - 0x1518], eax
lea ebx, [ebp - 0x1274]
push ebx
mov dword [ebp - 0x14a0], edx
lea edi, [ebp - 0x15b4]
push edi
call fcn.0048ba80
mov ebx, eax
add esp, 0x18
lea ecx, [ebp - 0x121c]
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x474aa1
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x474a8c
dec eax
mov edi, eax
cmp dword [ebp - 0x1248], 0
jne 0x474c63
test esi, esi
jne 0x474c63
xor edx, edx
lea eax, [ebp + 0x1f]
and eax, 0xfffffffc
mov dword [ebp - 0x1258], 0xffffffff
mov dword [ebp - 0x15b8], ebx
mov ebx, eax
mov dword [ebp - 0x1260], edi
mov edi, edx
mov dword [ebp - 0x124c], esi
cmp dword [ebp - 0x1258], 0xffffffff
je 0x474b41
push edi
call fcn.0047cad0
mov edi, eax
add esp, 4
test edi, edi
je 0x474b3f
mov edx, dword [ebp + 0x10]
mov dword [ebp - 0x125c], edx
shr edx, 0x18
movzx edx, dl
test edx, 0x80
je 0x474b13
mov esi, dword [ebx]
jmp 0x474b15
xor esi, esi
shr esi, 0xf
movzx edx, byte [ebp - 0x125c]
and esi, 1
and edx, 1
or edx, esi
jne 0x4782db
push str.unknown
push 0
push 2
push edi
call fcn.00480060
add esp, 0x10
xor edi, edi
push 0xf
lea ecx, [ebp - 0x1258]
push ecx
lea esi, [ebp - 0x1244]
push esi
call fcn.0047dd20
add esp, 0xc
test eax, eax
je 0x474ba3
mov ecx, dword [ebp + 0x10]
mov dword [ebp - 0x127c], ecx
shr ecx, 0x18
movzx ecx, cl
test ecx, 0x80
je 0x474b78
mov edx, dword [ebx]
jmp 0x474b7a
xor edx, edx
shr edx, 0xf
movzx ecx, byte [ebp - 0x127c]
and edx, 1
and ecx, 1
or ecx, edx
jne 0x47859f
push str.unknown
push edi
push 2
push eax
call fcn.00480060
add esp, 0x10
cmp dword [ebp - 0x1258], 0xffffffff
je 0x478484
mov ecx, dword [ebp - 0x1244]
mov edi, dword [ecx + 0x124]
test byte [ecx + 0x1a1], 0x20
je 0x474ae0
mov dword [ebp - 0x1278], 3
lea ecx, [ebp - 0x1278]
push ecx
call fcn.004554f0
add esp, 4
cmp eax, 2
je 0x474c3e
push 0
mov esi, dword [ebp - 0x1244]
lea ecx, [ebp - 0x21b]
push ecx
push 0x104
push dword [esi + 0x78]
call dword [sym.imp.KERNEL32.dll_GetFullPathNameA]
mov esi, eax
push 0
lea ecx, [ebp - 0x116]
push ecx
push 0x104
lea ecx, [ebp - 0x121c]
push ecx
call dword [sym.imp.KERNEL32.dll_GetFullPathNameA]
test esi, esi
je 0x474c3e
test eax, eax
je 0x474c3e
lea ecx, [ebp - 0x116]
push ecx
lea esi, [ebp - 0x21b]
push esi
call fcn.004dbc3d
jmp 0x474c53
mov esi, dword [ebp - 0x1244]
lea ecx, [ebp - 0x121c]
push ecx
push dword [esi + 0x78]
call fcn.004dbc3d
add esp, 8
test eax, eax
jne 0x474ae0
jmp 0x478465
mov ecx, dword [ebp - 0x1244]
xor edx, edx
test ecx, ecx
je 0x4784bb
movzx edx, byte [ecx + 0x1a0]
and edx, 0x10
shr edx, 3
dec edx
mov dword [ebp - 0x125c], edx
mov edx, dword [ecx + 0x124]
mov esi, edx
and esi, 0xfffffffe
cmp esi, 0xfffffffa
jne 0x474d61
movzx eax, word [ecx + 0x18a]
test eax, eax
jg 0x474cbb
mov eax, dword [ebp - 0x1240]
cmp eax, dword [ecx + 0x124]
jne 0x474cbb
mov eax, 0x5b
jmp 0x474cc0
mov eax, 0x5a
mov edx, dword [ecx + 0x20]
test edx, edx
je 0x47872e
test byte [edx + 0x44], 2
je 0x474d1b
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x1244]
mov ecx, dword [edx + 0x20]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x1244]
mov edx, dword [ebx + 0x7c]
test edx, edx
je 0x474cfb
xor ecx, ecx
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x1244]
mov dword [edx + 0x7c], ecx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x543b10]
jne 0x477bd0
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.004865b0
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x543b10]
jne 0x477bd0
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
push dword [ebp - 0x125c]
mov dword [ebp - 0x127c], edx
lea esi, [ebp - 0x13fc]
push esi
push ecx
call fcn.00499e10
mov edx, dword [ebp - 0x127c]
mov esi, eax
add esp, 0xc
test ebx, ebx
jne 0x477bab
test esi, esi
jne 0x477b02
mov eax, dword [ebp - 0x13a0]
test eax, eax
je 0x474f77
mov edx, dword [ebp - 0x1244]
test edx, edx
je 0x47afb3
movsx ecx, byte [edx + 0x18e]
cmp ecx, 1
je 0x47af43
cmp ecx, 2
je 0x474f3c
cmp ecx, 3
je 0x474f0c
test ecx, ecx
jne 0x474e5c
test byte [edx + 0x1a0], 4
jne 0x474e20
mov edx, dword [ebp - 0x13a4]
mov ebx, str.UNKNOWN
xor esi, esi
cmp esi, eax
jge 0x474f77
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 7
jl 0x474df1
cmp esi, eax
jge 0x474f77
neg esi
add eax, esi
cmp eax, 0x60
jg 0x474f6b
jmp 0x478758
mov edx, dword [ebp - 0x13a4]
mov ebx, str.UNDEFINED
xor esi, esi
cmp esi, eax
jge 0x474f77
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 9
jl 0x474e2d
cmp esi, eax
jge 0x474f77
neg esi
add eax, esi
cmp eax, 0x60
jg 0x474f6b
jmp 0x478791
mov eax, dword [edx + 0x20]
test eax, eax
je 0x4787ca
test byte [eax + 0x44], 2
je 0x474ec1
mov edx, 0x30
mov dword [eax + 0x38], edx
mov eax, dword [ebp - 0x1244]
mov ecx, dword [eax + 0x20]
mov dword [ecx + 0x3c], edx
mov ebx, dword [ebp - 0x1244]
mov eax, dword [ebx + 0x7c]
test eax, eax
je 0x474e9c
xor edx, edx
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x1244]
mov dword [eax + 0x7c], edx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x543b10]
jne 0x477bd0
mov eax, 0x30
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
movzx ecx, byte [edx + 0x1ae]
mov eax, 0x30
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.004865b0
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x543b10]
jne 0x477bd0
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
mov edx, dword [ebp - 0x13a4]
mov ebx, str.NONE
xor esi, esi
cmp esi, eax
jge 0x474f77
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 4
jl 0x474f19
cmp esi, eax
jge 0x474f77
neg esi
add eax, esi
cmp eax, 0x60
jg 0x474f6b
jmp 0x4787f9
mov edx, dword [ebp - 0x13a4]
mov ebx, str.LIST
xor esi, esi
cmp esi, eax
jge 0x474f77
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 4
jl 0x474f49
cmp esi, eax
jge 0x474f77
neg esi
add eax, esi
cmp eax, 0x60
jle 0x47af0a
push eax
push 0x20
push edx
call fcn.004ca8b0
add esp, 0xc
mov eax, dword [ebp - 0x1390]
test eax, eax
je 0x475044
mov edx, dword [ebp - 0x1244]
test edx, edx
je 0x47ae9a
test byte [edx + 0x1a3], 8
jne 0x475009
test byte [edx + 0x1a1], 0x20
je 0x474fd9
mov edx, dword [ebp - 0x1394]
mov ebx, 0x500f5c
xor esi, esi
cmp esi, eax
jge 0x475044
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 2
jl 0x474fb2
cmp esi, eax
jge 0x475044
neg esi
add eax, esi
cmp eax, 0x60
jg 0x475038
jmp 0x478832
mov edx, dword [ebp - 0x1394]
mov ebx, str.UNKNOWN
xor esi, esi
cmp esi, eax
jge 0x475044
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 7
jl 0x474fe6
cmp esi, eax
jge 0x475044
neg esi
add eax, esi
cmp eax, 0x60
jg 0x475038
jmp 0x47886b
mov edx, dword [ebp - 0x1394]
mov ebx, 0x500f60
xor esi, esi
cmp esi, eax
jge 0x475044
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 3
jl 0x475016
cmp esi, eax
jge 0x475044
neg esi
add eax, esi
cmp eax, 0x60
jle 0x47ae61
push eax
push 0x20
push edx
call fcn.004ca8b0
add esp, 0xc
mov eax, dword [ebp - 0x1380]
test eax, eax
je 0x47514d
mov ecx, dword [ebp - 0x1244]
test ecx, ecx
je 0x47adf1
movzx edx, byte [ecx + 0x1a2]
test dl, 0x40
jne 0x475112
test edx, 0x80
jne 0x4750e2
movzx edx, byte [ecx + 0x1a8]
test dl, 2
jne 0x4750e2
test dl, 1
jne 0x4750e2
mov edx, dword [ebp - 0x1384]
xor ebx, ebx
mov dword [ebp - 0x15b8], edx
mov edx, str.UNKNOWN
mov esi, dword [ebp - 0x15b8]
cmp ebx, eax
jge 0x47514d
movzx ecx, byte [edx]
inc ebx
mov byte [esi], cl
inc esi
inc edx
cmp ebx, 7
jl 0x4750a2
mov dword [ebp - 0x15b8], esi
cmp ebx, eax
jge 0x47514d
neg ebx
add eax, ebx
cmp eax, 0x60
jle 0x4788a4
push eax
push 0x20
push dword [ebp - 0x15b8]
call fcn.004ca8b0
jmp 0x47514a
mov edx, dword [ebp - 0x1384]
mov ebx, 0x500f5c
xor esi, esi
cmp esi, eax
jge 0x47514d
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 2
jl 0x4750ef
cmp esi, eax
jge 0x47514d
neg esi
add eax, esi
cmp eax, 0x60
jg 0x475141
jmp 0x4788e5
mov edx, dword [ebp - 0x1384]
mov ebx, 0x500f60
xor esi, esi
cmp esi, eax
jge 0x47514d
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 3
jl 0x47511f
cmp esi, eax
jge 0x47514d
neg esi
add eax, esi
cmp eax, 0x60
jle 0x47adb8
push eax
push 0x20
push edx
call fcn.004ca8b0
add esp, 0xc
mov eax, dword [ebp - 0x1378]
test eax, eax
je 0x475223
mov edx, dword [ebp - 0x1244]
test edx, edx
je 0x47ad48
test byte [edx + 0x1a3], 0x10
jne 0x4751e8
test byte [edx + 0x1a4], 0x10
jne 0x4751b8
test byte [edx + 0x1a1], 0x20
jne 0x4751b8
mov edx, dword [ebp - 0x137c]
mov ebx, str.UNKNOWN
xor esi, esi
cmp esi, eax
jge 0x475223
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 7
jl 0x475191
cmp esi, eax
jge 0x475223
neg esi
add eax, esi
cmp eax, 0x60
jg 0x475217
jmp 0x47891e
mov edx, dword [ebp - 0x137c]
mov ebx, 0x500f5c
xor esi, esi
cmp esi, eax
jge 0x475223
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 2
jl 0x4751c5
cmp esi, eax
jge 0x475223
neg esi
add eax, esi
cmp eax, 0x60
jg 0x475217
jmp 0x478957
mov edx, dword [ebp - 0x137c]
mov ebx, 0x500f60
xor esi, esi
cmp esi, eax
jge 0x475223
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 3
jl 0x4751f5
cmp esi, eax
jge 0x475223
neg esi
add eax, esi
cmp eax, 0x60
jle 0x47ad0f
push eax
push 0x20
push edx
call fcn.004ca8b0
add esp, 0xc
mov ecx, dword [ebp - 0x1370]
test ecx, ecx
je 0x4752c7
mov eax, dword [ebp - 0x1244]
test eax, eax
je 0x47abe4
test byte [eax + 0x1a4], 0x10
jne 0x4752b6
mov ebx, dword [eax + 0x124]
test ebx, ebx
jl 0x478a65
mov esi, dword [eax + 0x78]
test esi, esi
je 0x4789d4
movsx eax, word [eax + 0x188]
xor edx, edx
mov ebx, dword [ebp - 0x1374]
test eax, eax
jle 0x475296
mov dword [ebp - 0x1260], edi
mov edi, eax
cmp edx, ecx
jge 0x4789c9
movzx eax, byte [esi]
inc edx
mov byte [ebx], al
inc ebx
inc esi
cmp edx, edi
jl 0x47527c
mov edi, dword [ebp - 0x1260]
cmp edx, ecx
jge 0x4752c7
mov esi, ecx
sub esi, edx
cmp esi, 0x60
jle 0x478990
inc edx
sub ecx, edx
inc ecx
push ecx
push 0x20
push ebx
call fcn.004ca8b0
jmp 0x4752c4
push ecx
push 0x20
push dword [ebp - 0x1374]
call fcn.004ca8b0
add esp, 0xc
mov edx, dword [ebp - 0x13e0]
test edx, edx
je 0x475394
mov ebx, dword [ebp - 0x1244]
test ebx, ebx
je 0x47abcc
mov ecx, dword [ebx + 0x124]
test ecx, ecx
jl 0x47aba2
cmp dword [ebx + 0x78], 0
je 0x475310
test byte [ebx + 0x1a2], 4
jne 0x475310
movzx ecx, byte [ebx + 0x1a0]
and ecx, 0x10
shr ecx, 3
dec ecx
jmp 0x475312
xor ecx, ecx
add edx, 0xfffffffb
cmp edx, 0xc
ja 0x47537e
ja 0x475359
movzx eax, byte [edx + 0x501664]
add eax, 0x47532a
jmp eax
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x543b10]
jne 0x477bd0
mov eax, 0x30
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
push 0x592
push str.for_inquire.c
push 2
push 8
call fcn.00480060
add esp, 0x10
mov eax, dword [ebp - 0x1368]
test eax, eax
je 0x475529
mov edx, dword [ebp - 0x1244]
test edx, edx
je 0x47ab32
movsx ecx, byte [edx + 0x18d]
cmp ecx, 1
je 0x47aac2
cmp ecx, 2
je 0x4754ee
cmp ecx, 3
je 0x4754be
test ecx, ecx
je 0x47548a
mov eax, dword [edx + 0x20]
test eax, eax
je 0x478a8f
test byte [eax + 0x44], 2
je 0x47543f
mov edx, 0x30
mov dword [eax + 0x38], edx
mov eax, dword [ebp - 0x1244]
mov ecx, dword [eax + 0x20]
mov dword [ecx + 0x3c], edx
mov ebx, dword [ebp - 0x1244]
mov eax, dword [ebx + 0x7c]
test eax, eax
je 0x47541a
xor edx, edx
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x1244]
mov dword [eax + 0x7c], edx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x543b10]
jne 0x477bd0
mov eax, 0x30
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
movzx ecx, byte [edx + 0x1ae]
mov eax, 0x30
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.004865b0
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x543b10]
jne 0x477bd0
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
mov edx, dword [ebp - 0x136c]
mov ebx, str.UNKNOWN
xor esi, esi
cmp esi, eax
jge 0x475529
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 7
jl 0x475497
cmp esi, eax
jge 0x475529
neg esi
add eax, esi
cmp eax, 0x60
jg 0x47551d
jmp 0x478abe
mov edx, dword [ebp - 0x136c]
mov ebx, str.INDEXED
xor esi, esi
cmp esi, eax
jge 0x475529
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 7
jl 0x4754cb
cmp esi, eax
jge 0x475529
neg esi
add eax, esi
cmp eax, 0x60
jg 0x47551d
jmp 0x478af7
mov edx, dword [ebp - 0x136c]
mov ebx, str.RELATIVE
xor esi, esi
cmp esi, eax
jge 0x475529
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 8
jl 0x4754fb
cmp esi, eax
jge 0x475529
neg esi
add eax, esi
cmp eax, 0x60
jle 0x47aa89
push eax
push 0x20
push edx
call fcn.004ca8b0
add esp, 0xc
mov ebx, dword [ebp - 0x13c0]
test ebx, ebx
je 0x47562c
movzx eax, byte [ebp - 0x12bc]
and eax, 2
mov edx, dword [ebp - 0x1244]
shr eax, 1
test edx, edx
je 0x47aa7d
test eax, eax
je 0x475565
test byte [edx + 0x1a1], 0x20
jne 0x475565
mov ecx, 0xffffffff
jmp 0x4755aa
test byte [edx + 0x1a3], 4
je 0x47557e
mov ecx, 0xfffffffe
test eax, eax
jne 0x4755aa
mov ecx, 0x7fffffff
jmp 0x4755aa
mov esi, dword [edx + 0x120]
test esi, esi
je 0x4755a4
lea eax, [esi + 3]
sar eax, 1
shr eax, 0x1e
lea ecx, [eax + esi + 3]
sar ecx, 2
test byte [edx + 0x1ae], 4
jne 0x4755aa
mov ecx, esi
jmp 0x4755aa
mov ecx, dword [edx + 0x11c]
add ebx, 0xfffffffb
cmp ebx, 0xc
ja 0x475616
ja 0x4755f1
movzx eax, byte [ebx + 0x501674]
add eax, 0x4755c2
jmp eax
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x543b10]
jne 0x477bd0
mov eax, 0x30
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
push 0x608
push str.for_inquire.c
push 2
push 8
call fcn.00480060
add esp, 0x10
mov edx, dword [ebp - 0x1360]
test edx, edx
je 0x4758fb
mov eax, dword [ebp - 0x1244]
test eax, eax
je 0x47aa0d
movsx ecx, byte [eax + 0x18c]
cmp ecx, 8
ja 0x477a52
movzx eax, word [ecx*2 + 0x501684]
add eax, 0x475667
jmp eax
push edx
push 0x20
push eax
call fcn.004ca8b0
add esp, 0xc
mov eax, dword [ebp - 0x1358]
test eax, eax
je 0x475a46
mov ecx, dword [ebp - 0x1244]
test ecx, ecx
je 0x47a935
test byte [ecx + 0x1a1], 0x20
je 0x475a0b
movzx edx, byte [ecx + 0x1a3]
test dl, 2
jne 0x4759db
test byte [ecx + 0x1a0], 4
je 0x4759a7
test dl, 8
je 0x4759a7
test byte [ecx + 0x1a2], 0x40
je 0x4759a7
mov edx, dword [ebp - 0x135c]
xor ebx, ebx
mov dword [ebp - 0x15b8], edx
mov edx, 0x500f60
mov esi, dword [ebp - 0x15b8]
cmp ebx, eax
jge 0x475a46
movzx ecx, byte [edx]
inc ebx
mov byte [esi], cl
inc esi
inc edx
cmp ebx, 3
jl 0x475964
mov dword [ebp - 0x15b8], esi
cmp ebx, eax
jge 0x475a46
neg ebx
add eax, ebx
cmp eax, 0x60
jle 0x478cf6
push eax
push 0x20
push dword [ebp - 0x15b8]
call fcn.004ca8b0
jmp 0x475a43
mov edx, dword [ebp - 0x135c]
mov ebx, 0x500f5c
xor esi, esi
cmp esi, eax
jge 0x475a46
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 2
jl 0x4759b4
cmp esi, eax
jge 0x475a46
neg esi
add eax, esi
cmp eax, 0x60
jg 0x475a3a
jmp 0x478d37
mov edx, dword [ebp - 0x135c]
mov ebx, 0x500f60
xor esi, esi
cmp esi, eax
jge 0x475a46
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 3
jl 0x4759e8
cmp esi, eax
jge 0x475a46
neg esi
add eax, esi
cmp eax, 0x60
jg 0x475a3a
jmp 0x478d70
mov edx, dword [ebp - 0x135c]
mov ebx, str.UNKNOWN
xor esi, esi
cmp esi, eax
jge 0x475a46
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 7
jl 0x475a18
cmp esi, eax
jge 0x475a46
neg esi
add eax, esi
cmp eax, 0x60
jle 0x47a8fc
push eax
push 0x20
push edx
call fcn.004ca8b0
add esp, 0xc
mov eax, dword [ebp - 0x1350]
test eax, eax
je 0x475b13
mov edx, dword [ebp - 0x1244]
test edx, edx
je 0x47a88c
test byte [edx + 0x1a1], 0x20
je 0x475ad8
test byte [edx + 0x1a3], 4
jne 0x475aa8
mov edx, dword [ebp - 0x1354]
mov ebx, 0x500f5c
xor esi, esi
cmp esi, eax
jge 0x475b13
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 2
jl 0x475a81
cmp esi, eax
jge 0x475b13
neg esi
add eax, esi
cmp eax, 0x60
jg 0x475b07
jmp 0x478da9
mov edx, dword [ebp - 0x1354]
mov ebx, 0x500f60
xor esi, esi
cmp esi, eax
jge 0x475b13
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 3
jl 0x475ab5
cmp esi, eax
jge 0x475b13
neg esi
add eax, esi
cmp eax, 0x60
jg 0x475b07
jmp 0x478de2
mov edx, dword [ebp - 0x1354]
mov ebx, str.UNKNOWN
xor esi, esi
cmp esi, eax
jge 0x475b13
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 7
jl 0x475ae5
cmp esi, eax
jge 0x475b13
neg esi
add eax, esi
cmp eax, 0x60
jle 0x47a853
push eax
push 0x20
push edx
call fcn.004ca8b0
add esp, 0xc
mov eax, dword [ebp - 0x1348]
test eax, eax
je 0x475c8d
mov ebx, dword [ebp - 0x1244]
test ebx, ebx
je 0x47a7e3
movzx edx, byte [ebx + 0x1a2]
test dl, 0x40
jne 0x475c52
movzx ecx, byte [ebx + 0x1a8]
test cl, 2
jne 0x475c52
test edx, 0x80
jne 0x475c22
test cl, 1
jne 0x475c22
test byte [ebx + 0x1a0], 4
jne 0x475bc9
mov edx, dword [ebp - 0x134c]
xor ebx, ebx
mov dword [ebp - 0x15b8], edx
mov edx, str.UNKNOWN
mov esi, dword [ebp - 0x15b8]
cmp ebx, eax
jge 0x475c8d
movzx ecx, byte [edx]
inc ebx
mov byte [esi], cl
inc esi
inc edx
cmp ebx, 7
jl 0x475b86
mov dword [ebp - 0x15b8], esi
cmp ebx, eax
jge 0x475c8d
neg ebx
add eax, ebx
cmp eax, 0x60
jle 0x478e1b
push eax
push 0x20
push dword [ebp - 0x15b8]
call fcn.004ca8b0
jmp 0x475c8a
mov edx, dword [ebp - 0x134c]
xor ebx, ebx
mov dword [ebp - 0x15b8], edx
mov edx, 0x500f5c
mov esi, dword [ebp - 0x15b8]
cmp ebx, eax
jge 0x475c8d
movzx ecx, byte [edx]
inc ebx
mov byte [esi], cl
inc esi
inc edx
cmp ebx, 2
jl 0x475be2
mov dword [ebp - 0x15b8], esi
cmp ebx, eax
jge 0x475c8d
neg ebx
add eax, ebx
cmp eax, 0x60
jle 0x478e5c
push eax
push 0x20
push dword [ebp - 0x15b8]
call fcn.004ca8b0
jmp 0x475c8a
mov edx, dword [ebp - 0x134c]
mov ebx, 0x500f60
xor esi, esi
cmp esi, eax
jge 0x475c8d
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 3
jl 0x475c2f
cmp esi, eax
jge 0x475c8d
neg esi
add eax, esi
cmp eax, 0x60
jg 0x475c81
jmp 0x478e9d
mov edx, dword [ebp - 0x134c]
mov ebx, 0x500f5c
xor esi, esi
cmp esi, eax
jge 0x475c8d
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 2
jl 0x475c5f
cmp esi, eax
jge 0x475c8d
neg esi
add eax, esi
cmp eax, 0x60
jle 0x47a7aa
push eax
push 0x20
push edx
call fcn.004ca8b0
add esp, 0xc
mov eax, dword [ebp - 0x1340]
test eax, eax
je 0x475dcb
mov ecx, dword [ebp - 0x1244]
test ecx, ecx
je 0x47a73a
movzx edx, byte [ecx + 0x1a1]
test dl, 0x20
je 0x475d90
test dl, 0x40
jne 0x475d60
test byte [ecx + 0x1a6], 1
jne 0x475d07
mov edx, dword [ebp - 0x1344]
mov ebx, str.READWRITE
xor esi, esi
cmp esi, eax
jge 0x475dcb
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 9
jl 0x475cd8
cmp esi, eax
jge 0x475dcb
neg esi
add eax, esi
cmp eax, 0x60
jg 0x475dbf
jmp 0x478ed6
mov edx, dword [ebp - 0x1344]
xor ebx, ebx
mov dword [ebp - 0x15b8], edx
mov edx, str.WRITE
mov esi, dword [ebp - 0x15b8]
cmp ebx, eax
jge 0x475dcb
movzx ecx, byte [edx]
inc ebx
mov byte [esi], cl
inc esi
inc edx
cmp ebx, 5
jl 0x475d20
mov dword [ebp - 0x15b8], esi
cmp ebx, eax
jge 0x475dcb
neg ebx
add eax, ebx
cmp eax, 0x60
jle 0x478f0f
push eax
push 0x20
push dword [ebp - 0x15b8]
call fcn.004ca8b0
jmp 0x475dc8
mov edx, dword [ebp - 0x1344]
mov ebx, str.READ
xor esi, esi
cmp esi, eax
jge 0x475dcb
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 4
jl 0x475d6d
cmp esi, eax
jge 0x475dcb
neg esi
add eax, esi
cmp eax, 0x60
jg 0x475dbf
jmp 0x478f50
mov edx, dword [ebp - 0x1344]
mov ebx, str.UNDEFINED
xor esi, esi
cmp esi, eax
jge 0x475dcb
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 9
jl 0x475d9d
cmp esi, eax
jge 0x475dcb
neg esi
add eax, esi
cmp eax, 0x60
jle 0x47a701
push eax
push 0x20
push edx
call fcn.004ca8b0
add esp, 0xc
mov eax, dword [ebp - 0x1338]
test eax, eax
je 0x476009
mov edx, dword [ebp - 0x1244]
test edx, edx
je 0x47a691
test byte [edx + 0x1a1], 0x20
je 0x475fce
test byte [edx + 0x1a2], 0x40
je 0x475f9e
movsx ecx, byte [edx + 0x191]
test ecx, ecx
je 0x475f6a
cmp ecx, 0x27
je 0x475f0e
cmp ecx, 0x22
je 0x475ed2
mov eax, dword [edx + 0x20]
test eax, eax
je 0x478f89
test byte [eax + 0x44], 2
je 0x475e87
mov edx, 0x30
mov dword [eax + 0x38], edx
mov eax, dword [ebp - 0x1244]
mov ecx, dword [eax + 0x20]
mov dword [ecx + 0x3c], edx
mov ebx, dword [ebp - 0x1244]
mov eax, dword [ebx + 0x7c]
test eax, eax
je 0x475e62
xor edx, edx
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x1244]
mov dword [eax + 0x7c], edx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x543b10]
jne 0x477bd0
mov eax, 0x30
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
movzx ecx, byte [edx + 0x1ae]
mov eax, 0x30
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.004865b0
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x543b10]
jne 0x477bd0
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
mov edx, dword [ebp - 0x133c]
mov ebx, str.QUOTE
xor esi, esi
cmp esi, eax
jge 0x476009
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 5
jl 0x475edf
cmp esi, eax
jge 0x476009
neg esi
add eax, esi
cmp eax, 0x60
jg 0x475ffd
jmp 0x478fb8
mov edx, dword [ebp - 0x133c]
xor ebx, ebx
mov dword [ebp - 0x15b8], edx
mov edx, str.APOSTROPHE
mov esi, dword [ebp - 0x15b8]
cmp ebx, eax
jge 0x476009
movzx ecx, byte [edx]
inc ebx
mov byte [esi], cl
inc esi
inc edx
cmp ebx, 0xa
jl 0x475f27
mov dword [ebp - 0x15b8], esi
cmp ebx, eax
jge 0x476009
neg ebx
add eax, ebx
cmp eax, 0x60
jle 0x478ff1
push eax
push 0x20
push dword [ebp - 0x15b8]
call fcn.004ca8b0
jmp 0x476006
mov edx, dword [ebp - 0x133c]
mov ebx, str.NONE
xor esi, esi
cmp esi, eax
jge 0x476009
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 4
jl 0x475f77
cmp esi, eax
jge 0x476009
neg esi
add eax, esi
cmp eax, 0x60
jg 0x475ffd
jmp 0x479032
mov edx, dword [ebp - 0x133c]
mov ebx, str.UNDEFINED
xor esi, esi
cmp esi, eax
jge 0x476009
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 9
jl 0x475fab
cmp esi, eax
jge 0x476009
neg esi
add eax, esi
cmp eax, 0x60
jg 0x475ffd
jmp 0x47906b
mov edx, dword [ebp - 0x133c]
mov ebx, str.UNDEFINED
xor esi, esi
cmp esi, eax
jge 0x476009
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 9
jl 0x475fdb
cmp esi, eax
jge 0x476009
neg esi
add eax, esi
cmp eax, 0x60
jle 0x47a658
push eax
push 0x20
push edx
call fcn.004ca8b0
add esp, 0xc
mov eax, dword [ebp - 0x1330]
test eax, eax
je 0x4760d6
mov edx, dword [ebp - 0x1244]
test edx, edx
je 0x47a5e8
test byte [edx + 0x1a1], 0x20
je 0x47609b
test byte [edx + 0x1a6], 2
je 0x47606b
mov edx, dword [ebp - 0x1334]
mov ebx, 0x500f60
xor esi, esi
cmp esi, eax
jge 0x4760d6
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 3
jl 0x476044
cmp esi, eax
jge 0x4760d6
neg esi
add eax, esi
cmp eax, 0x60
jg 0x4760ca
jmp 0x4790a4
mov edx, dword [ebp - 0x1334]
mov ebx, 0x500f5c
xor esi, esi
cmp esi, eax
jge 0x4760d6
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 2
jl 0x476078
cmp esi, eax
jge 0x4760d6
neg esi
add eax, esi
cmp eax, 0x60
jg 0x4760ca
jmp 0x4790dd
mov edx, dword [ebp - 0x1334]
mov ebx, 0x500f60
xor esi, esi
cmp esi, eax
jge 0x4760d6
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 3
jl 0x4760a8
cmp esi, eax
jge 0x4760d6
neg esi
add eax, esi
cmp eax, 0x60
jle 0x47a5af
push eax
push 0x20
push edx
call fcn.004ca8b0
add esp, 0xc
mov eax, dword [ebp - 0x1328]
test eax, eax
je 0x476333
mov ebx, dword [ebp - 0x1244]
test ebx, ebx
je 0x47a53f
test byte [ebx + 0x1a1], 0x20
je 0x4762f8
movzx edx, byte [ebx + 0x1a3]
test dl, 2
jne 0x476195
test dl, 8
je 0x476159
test byte [ebx + 0x1aa], 2
je 0x476159
mov edx, dword [ebp - 0x132c]
mov ebx, str.REWIND
xor esi, esi
cmp esi, eax
jge 0x476333
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 6
jl 0x47612a
cmp esi, eax
jge 0x476333
neg esi
add eax, esi
cmp eax, 0x60
jg 0x476327
jmp 0x479116
mov edx, dword [ebp - 0x132c]
mov ebx, str.UNDEFINED
xor esi, esi
cmp esi, eax
jge 0x476333
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 9
jl 0x476166
cmp esi, eax
jge 0x476333
neg esi
add eax, esi
cmp eax, 0x60
jg 0x476327
jmp 0x47914f
test byte [ebx + 0x1a7], 4
jne 0x4762c8
mov ecx, dword [ebx + 0xb8]
mov esi, 0x80000000
mov edx, dword [ebx + 0xbc]
mov ebx, 0xffffffff
neg esi
neg ebx
add esi, ecx
add ebx, edx
or esi, ebx
je 0x47626f
mov ebx, 1
xor esi, esi
sub ecx, ebx
sbb edx, esi
jb 0x476213
or ecx, edx
je 0x476213
mov edx, dword [ebp - 0x132c]
mov ebx, str.UNDEFINED
cmp esi, eax
jge 0x476333
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 9
jl 0x4761e4
cmp esi, eax
jge 0x476333
neg esi
add eax, esi
cmp eax, 0x60
jg 0x476327
jmp 0x479188
mov edx, dword [ebp - 0x132c]
xor ebx, ebx
mov dword [ebp - 0x15b8], edx
mov edx, str.REWIND
mov esi, dword [ebp - 0x15b8]
cmp ebx, eax
jge 0x476333
movzx ecx, byte [edx]
inc ebx
mov byte [esi], cl
inc esi
inc edx
cmp ebx, 6
jl 0x47622c
mov dword [ebp - 0x15b8], esi
cmp ebx, eax
jge 0x476333
neg ebx
add eax, ebx
cmp eax, 0x60
jle 0x4791c1
push eax
push 0x20
push dword [ebp - 0x15b8]
call fcn.004ca8b0
jmp 0x476330
mov edx, dword [ebp - 0x132c]
xor ebx, ebx
mov dword [ebp - 0x15b8], edx
mov edx, str.APPEND
mov esi, dword [ebp - 0x15b8]
cmp ebx, eax
jge 0x476333
movzx ecx, byte [edx]
inc ebx
mov byte [esi], cl
inc esi
inc edx
cmp ebx, 6
jl 0x476288
mov dword [ebp - 0x15b8], esi
cmp ebx, eax
jge 0x476333
neg ebx
add eax, ebx
cmp eax, 0x60
jle 0x479202
push eax
push 0x20
push dword [ebp - 0x15b8]
call fcn.004ca8b0
jmp 0x476330
mov edx, dword [ebp - 0x132c]
mov ebx, str.ASIS
xor esi, esi
cmp esi, eax
jge 0x476333
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 4
jl 0x4762d5
cmp esi, eax
jge 0x476333
neg esi
add eax, esi
cmp eax, 0x60
jg 0x476327
jmp 0x479243
mov edx, dword [ebp - 0x132c]
mov ebx, str.UNDEFINED
xor esi, esi
cmp esi, eax
jge 0x476333
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 9
jl 0x476305
cmp esi, eax
jge 0x476333
neg esi
add eax, esi
cmp eax, 0x60
jle 0x47a506
push eax
push 0x20
push edx
call fcn.004ca8b0
add esp, 0xc
mov eax, dword [ebp - 0x1320]
test eax, eax
je 0x476400
mov edx, dword [ebp - 0x1244]
test edx, edx
je 0x47a496
test byte [edx + 0x1a1], 0x20
je 0x4763c5
test byte [edx + 0x1a6], 1
je 0x476395
mov edx, dword [ebp - 0x1324]
mov ebx, 0x500f5c
xor esi, esi
cmp esi, eax
jge 0x476400
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 2
jl 0x47636e
cmp esi, eax
jge 0x476400
neg esi
add eax, esi
cmp eax, 0x60
jg 0x4763f4
jmp 0x47927c
mov edx, dword [ebp - 0x1324]
mov ebx, 0x500f60
xor esi, esi
cmp esi, eax
jge 0x476400
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 3
jl 0x4763a2
cmp esi, eax
jge 0x476400
neg esi
add eax, esi
cmp eax, 0x60
jg 0x4763f4
jmp 0x4792b5
mov edx, dword [ebp - 0x1324]
mov ebx, str.UNKNOWN
xor esi, esi
cmp esi, eax
jge 0x476400
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 7
jl 0x4763d2
cmp esi, eax
jge 0x476400
neg esi
add eax, esi
cmp eax, 0x60
jle 0x47a45d
push eax
push 0x20
push edx
call fcn.004ca8b0
add esp, 0xc
mov eax, dword [ebp - 0x1318]
test eax, eax
je 0x4764fe
mov edx, dword [ebp - 0x1244]
test edx, edx
je 0x47a3ed
movzx ecx, byte [edx + 0x1a1]
test cl, 0x20
je 0x4764c3
test byte [edx + 0x1a6], 1
jne 0x476493
test cl, 0x40
jne 0x476493
mov edx, dword [ebp - 0x131c]
xor ebx, ebx
mov dword [ebp - 0x15b8], edx
mov edx, 0x500f60
mov esi, dword [ebp - 0x15b8]
cmp ebx, eax
jge 0x4764fe
movzx ecx, byte [edx]
inc ebx
mov byte [esi], cl
inc esi
inc edx
cmp ebx, 3
jl 0x476453
mov dword [ebp - 0x15b8], esi
cmp ebx, eax
jge 0x4764fe
neg ebx
add eax, ebx
cmp eax, 0x60
jle 0x4792ee
push eax
push 0x20
push dword [ebp - 0x15b8]
call fcn.004ca8b0
jmp 0x4764fb
mov edx, dword [ebp - 0x131c]
mov ebx, 0x500f5c
xor esi, esi
cmp esi, eax
jge 0x4764fe
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 2
jl 0x4764a0
cmp esi, eax
jge 0x4764fe
neg esi
add eax, esi
cmp eax, 0x60
jg 0x4764f2
jmp 0x47932f
mov edx, dword [ebp - 0x131c]
mov ebx, str.UNKNOWN
xor esi, esi
cmp esi, eax
jge 0x4764fe
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 7
jl 0x4764d0
cmp esi, eax
jge 0x4764fe
neg esi
add eax, esi
cmp eax, 0x60
jle 0x47a3b4
push eax
push 0x20
push edx
call fcn.004ca8b0
add esp, 0xc
mov eax, dword [ebp - 0x1310]
test eax, eax
je 0x4765ca
mov edx, dword [ebp - 0x1244]
test edx, edx
je 0x47a344
movzx edx, byte [edx + 0x1a1]
test dl, 0x20
je 0x47658f
test dl, 0x40
je 0x47655f
mov edx, dword [ebp - 0x1314]
mov ebx, 0x500f5c
xor esi, esi
cmp esi, eax
jge 0x4765ca
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 2
jl 0x476538
cmp esi, eax
jge 0x4765ca
neg esi
add eax, esi
cmp eax, 0x60
jg 0x4765be
jmp 0x479368
mov edx, dword [ebp - 0x1314]
mov ebx, 0x500f60
xor esi, esi
cmp esi, eax
jge 0x4765ca
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 3
jl 0x47656c
cmp esi, eax
jge 0x4765ca
neg esi
add eax, esi
cmp eax, 0x60
jg 0x4765be
jmp 0x4793a1
mov edx, dword [ebp - 0x1314]
mov ebx, str.UNKNOWN
xor esi, esi
cmp esi, eax
jge 0x4765ca
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 7
jl 0x47659c
cmp esi, eax
jge 0x4765ca
neg esi
add eax, esi
cmp eax, 0x60
jle 0x47a30b
push eax
push 0x20
push edx
call fcn.004ca8b0
add esp, 0xc
mov ebx, dword [ebp - 0x13d0]
test ebx, ebx
je 0x47668c
movzx edx, byte [ebp + 0x12]
and edx, 4
mov eax, dword [ebp - 0x1244]
shr edx, 2
test eax, eax
je 0x47a2ff
test edx, edx
je 0x476604
test byte [eax + 0x1a1], 0x20
jne 0x476604
mov ecx, 0xffffffff
jmp 0x47660a
mov ecx, dword [eax + 0x124]
add ebx, 0xfffffffb
cmp ebx, 0xc
ja 0x476676
ja 0x476651
movzx eax, byte [ebx + 0x501698]
add eax, 0x476622
jmp eax
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x543b10]
jne 0x477bd0
mov eax, 0x30
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
push 0x82c
push str.for_inquire.c
push 2
push 8
call fcn.00480060
add esp, 0x10
mov eax, dword [ebp - 0x13b0]
test eax, eax
je 0x47693e
mov ecx, dword [ebp - 0x1244]
test ecx, ecx
je 0x47a215
test byte [ecx + 0x1a1], 0x20
je 0x4768cd
movzx edx, byte [ecx + 0x1a3]
test dl, 4
jne 0x476895
test dl, 2
jne 0x476839
test dl, 8
jne 0x4767fd
test dl, 0x10
jne 0x4767a1
test byte [ecx + 0x1a0], 2
jne 0x476745
mov edx, dword [ebp - 0x13b4]
xor ebx, ebx
mov dword [ebp - 0x15b8], edx
mov edx, str.UNKNOWN
mov esi, dword [ebp - 0x15b8]
cmp ebx, eax
jge 0x47693e
movzx ecx, byte [edx]
inc ebx
mov byte [esi], cl
inc esi
inc edx
cmp ebx, 7
jl 0x476702
mov dword [ebp - 0x15b8], esi
cmp ebx, eax
jge 0x47693e
neg ebx
add eax, ebx
cmp eax, 0x60
jle 0x4793da
push eax
push 0x20
push dword [ebp - 0x15b8]
call fcn.004ca8b0
jmp 0x47693b
mov edx, dword [ebp - 0x13b4]
xor ebx, ebx
mov dword [ebp - 0x15b8], edx
mov edx, str.UNDEFINED
mov esi, dword [ebp - 0x15b8]
cmp ebx, eax
jge 0x47693e
movzx ecx, byte [edx]
inc ebx
mov byte [esi], cl
inc esi
inc edx
cmp ebx, 9
jl 0x47675e
mov dword [ebp - 0x15b8], esi
cmp ebx, eax
jge 0x47693e
neg ebx
add eax, ebx
cmp eax, 0x60
jle 0x47941b
push eax
push 0x20
push dword [ebp - 0x15b8]
call fcn.004ca8b0
jmp 0x47693b
mov edx, dword [ebp - 0x13b4]
xor ebx, ebx
mov dword [ebp - 0x15b8], edx
mov edx, str.KEYED
mov esi, dword [ebp - 0x15b8]
cmp ebx, eax
jge 0x47693e
movzx ecx, byte [edx]
inc ebx
mov byte [esi], cl
inc esi
inc edx
cmp ebx, 5
jl 0x4767ba
mov dword [ebp - 0x15b8], esi
cmp ebx, eax
jge 0x47693e
neg ebx
add eax, ebx
cmp eax, 0x60
jle 0x47945c
push eax
push 0x20
push dword [ebp - 0x15b8]
call fcn.004ca8b0
jmp 0x47693b
mov edx, dword [ebp - 0x13b4]
mov ebx, str.DIRECT
xor esi, esi
cmp esi, eax
jge 0x47693e
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 6
jl 0x47680a
cmp esi, eax
jge 0x47693e
neg esi
add eax, esi
cmp eax, 0x60
jg 0x476932
jmp 0x47949d
mov edx, dword [ebp - 0x13b4]
xor ebx, ebx
mov dword [ebp - 0x15b8], edx
mov edx, str.SEQUENTIAL
mov esi, dword [ebp - 0x15b8]
cmp ebx, eax
jge 0x47693e
movzx ecx, byte [edx]
inc ebx
mov byte [esi], cl
inc esi
inc edx
cmp ebx, 0xa
jl 0x476852
mov dword [ebp - 0x15b8], esi
cmp ebx, eax
jge 0x47693e
neg ebx
add eax, ebx
cmp eax, 0x60
jle 0x4794d6
push eax
push 0x20
push dword [ebp - 0x15b8]
call fcn.004ca8b0
jmp 0x47693b
mov edx, dword [ebp - 0x13b4]
mov ebx, str.STREAM
xor esi, esi
cmp esi, eax
jge 0x47693e
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 6
jl 0x4768a2
cmp esi, eax
jge 0x47693e
neg esi
add eax, esi
cmp eax, 0x60
jg 0x476932
jmp 0x479517
test byte [ebp + 0x12], 4
jne 0x476903
mov edx, dword [ebp - 0x13b4]
mov ebx, str.UNKNOWN
xor esi, esi
cmp esi, eax
jge 0x47693e
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 7
jl 0x4768e0
cmp esi, eax
jge 0x47693e
neg esi
add eax, esi
cmp eax, 0x60
jg 0x476932
jmp 0x479550
mov edx, dword [ebp - 0x13b4]
mov ebx, str.UNDEFINED
xor esi, esi
cmp esi, eax
jge 0x47693e
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 9
jl 0x476910
cmp esi, eax
jge 0x47693e
neg esi
add eax, esi
cmp eax, 0x60
jle 0x47a1dc
push eax
push 0x20
push edx
call fcn.004ca8b0
add esp, 0xc
mov eax, dword [ebp - 0x13a8]
test eax, eax
je 0x476a55
mov edx, dword [ebp - 0x1244]
test edx, edx
je 0x47a0f2
test byte [edx + 0x1a2], 0x40
je 0x4769e4
test byte [edx + 0x1a3], 0x20
jne 0x4769ac
mov edx, dword [ebp - 0x13ac]
mov ebx, str.ZERO
xor esi, esi
cmp esi, eax
jge 0x476a55
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 4
jl 0x47697d
cmp esi, eax
jge 0x476a55
neg esi
add eax, esi
cmp eax, 0x60
jg 0x476a49
jmp 0x479589
mov edx, dword [ebp - 0x13ac]
mov ebx, str.NULL
xor esi, esi
cmp esi, eax
jge 0x476a55
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 4
jl 0x4769b9
cmp esi, eax
jge 0x476a55
neg esi
add eax, esi
cmp eax, 0x60
jg 0x476a49
jmp 0x4795c2
test byte [ebp + 0x12], 4
jne 0x476a1a
mov edx, dword [ebp - 0x13ac]
mov ebx, str.UNKNOWN
xor esi, esi
cmp esi, eax
jge 0x476a55
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 7
jl 0x4769f7
cmp esi, eax
jge 0x476a55
neg esi
add eax, esi
cmp eax, 0x60
jg 0x476a49
jmp 0x4795fb
mov edx, dword [ebp - 0x13ac]
mov ebx, str.UNDEFINED
xor esi, esi
cmp esi, eax
jge 0x476a55
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 9
jl 0x476a27
cmp esi, eax
jge 0x476a55
neg esi
add eax, esi
cmp eax, 0x60
jle 0x47a0b9
push eax
push 0x20
push edx
call fcn.004ca8b0
add esp, 0xc
mov eax, dword [ebp - 0x1388]
test eax, eax
je 0x476c75
mov ebx, dword [ebp - 0x1244]
test ebx, ebx
je 0x479fcf
test byte [ebx + 0x1a1], 0x20
je 0x476c04
movzx edx, byte [ebx + 0x1a2]
test dl, 0x40
jne 0x476bcc
movzx ecx, byte [ebx + 0x1a8]
test cl, 2
jne 0x476b90
test edx, 0x80
jne 0x476b54
test cl, 1
jne 0x476b54
test byte [ebx + 0x1a0], 2
jne 0x476b18
mov edx, dword [ebp - 0x138c]
xor ebx, ebx
mov dword [ebp - 0x15b8], edx
mov edx, str.UNKNOWN
mov esi, dword [ebp - 0x15b8]
cmp ebx, eax
jge 0x476c75
movzx ecx, byte [edx]
inc ebx
mov byte [esi], cl
inc esi
inc edx
cmp ebx, 7
jl 0x476ad5
mov dword [ebp - 0x15b8], esi
cmp ebx, eax
jge 0x476c75
neg ebx
add eax, ebx
cmp eax, 0x60
jle 0x479634
push eax
push 0x20
push dword [ebp - 0x15b8]
call fcn.004ca8b0
jmp 0x476c72
mov edx, dword [ebp - 0x138c]
mov ebx, str.UNDEFINED
xor esi, esi
cmp esi, eax
jge 0x476c75
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 9
jl 0x476b25
cmp esi, eax
jge 0x476c75
neg esi
add eax, esi
cmp eax, 0x60
jg 0x476c69
jmp 0x479675
mov edx, dword [ebp - 0x138c]
mov ebx, str.UNFORMATTED
xor esi, esi
cmp esi, eax
jge 0x476c75
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 0xb
jl 0x476b61
cmp esi, eax
jge 0x476c75
neg esi
add eax, esi
cmp eax, 0x60
jg 0x476c69
jmp 0x4796ae
mov edx, dword [ebp - 0x138c]
mov ebx, str.BINARY
xor esi, esi
cmp esi, eax
jge 0x476c75
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 6
jl 0x476b9d
cmp esi, eax
jge 0x476c75
neg esi
add eax, esi
cmp eax, 0x60
jg 0x476c69
jmp 0x4796e7
mov edx, dword [ebp - 0x138c]
mov ebx, str.FORMATTED
xor esi, esi
cmp esi, eax
jge 0x476c75
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 9
jl 0x476bd9
cmp esi, eax
jge 0x476c75
neg esi
add eax, esi
cmp eax, 0x60
jg 0x476c69
jmp 0x479720
test byte [ebp + 0x12], 4
jne 0x476c3a
mov edx, dword [ebp - 0x138c]
mov ebx, str.UNKNOWN
xor esi, esi
cmp esi, eax
jge 0x476c75
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 7
jl 0x476c17
cmp esi, eax
jge 0x476c75
neg esi
add eax, esi
cmp eax, 0x60
jg 0x476c69
jmp 0x479759
mov edx, dword [ebp - 0x138c]
mov ebx, str.UNDEFINED
xor esi, esi
cmp esi, eax
jge 0x476c75
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 9
jl 0x476c47
cmp esi, eax
jge 0x476c75
neg esi
add eax, esi
cmp eax, 0x60
jle 0x479f96
push eax
push 0x20
push edx
call fcn.004ca8b0
add esp, 0xc
mov eax, dword [ebp - 0x12e0]
test eax, eax
je 0x476d4b
mov edx, dword [ebp - 0x1244]
test edx, edx
je 0x479f26
test byte [edx + 0x1a1], 0x20
je 0x476d10
test byte [edx + 0x1a9], 0x40
jne 0x476ce0
test byte [edx + 0x1ac], 4
jne 0x476ce0
mov edx, dword [ebp - 0x12e4]
mov ebx, 0x500f5c
xor esi, esi
cmp esi, eax
jge 0x476d4b
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 2
jl 0x476cb9
cmp esi, eax
jge 0x476d4b
neg esi
add eax, esi
cmp eax, 0x60
jg 0x476d3f
jmp 0x479792
mov edx, dword [ebp - 0x12e4]
mov ebx, 0x500f60
xor esi, esi
cmp esi, eax
jge 0x476d4b
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 3
jl 0x476ced
cmp esi, eax
jge 0x476d4b
neg esi
add eax, esi
cmp eax, 0x60
jg 0x476d3f
jmp 0x4797cb
mov edx, dword [ebp - 0x12e4]
mov ebx, str.UNKNOWN
xor esi, esi
cmp esi, eax
jge 0x476d4b
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 7
jl 0x476d1d
cmp esi, eax
jge 0x476d4b
neg esi
add eax, esi
cmp eax, 0x60
jle 0x479eed
push eax
push 0x20
push edx
call fcn.004ca8b0
add esp, 0xc
mov ecx, dword [ebp - 0x12d0]
test ecx, ecx
je 0x476da1
cmp dword [ebp - 0x125c], 0
je 0x476da1
mov eax, dword [ebp - 0x12d4]
lea esi, [ebp - 0x121c]
xor ebx, ebx
test edi, edi
jle 0x476d80
cmp ebx, ecx
jge 0x476da1
movzx edx, byte [esi]
inc ebx
mov byte [eax], dl
inc eax
inc esi
cmp ebx, edi
jl 0x476d70
cmp ebx, ecx
jge 0x476da1
mov esi, ecx
sub esi, ebx
cmp esi, 0x60
jle 0x479eb4
inc ebx
sub ecx, ebx
inc ecx
push ecx
push 0x20
push eax
call fcn.004ca8b0
add esp, 0xc
mov eax, dword [ebp - 0x12c8]
test eax, eax
je 0x476e3b
mov edx, dword [ebp - 0x1244]
test edx, edx
je 0x479e44
test byte [edx + 0x1a1], 0x20
je 0x476e00
cmp dword [edx + 0x20], 0
je 0x47983d
mov edx, dword [ebp - 0x12cc]
mov ebx, 0x500f60
xor esi, esi
cmp esi, eax
jge 0x476e3b
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 3
jl 0x476ddd
cmp esi, eax
jge 0x476e3b
neg esi
add eax, esi
cmp eax, 0x60
jg 0x476e2f
jmp 0x479804
mov edx, dword [ebp - 0x12cc]
mov ebx, str.UNDEFINED
xor esi, esi
cmp esi, eax
jge 0x476e3b
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 9
jl 0x476e0d
cmp esi, eax
jge 0x476e3b
neg esi
add eax, esi
cmp eax, 0x60
jle 0x479e0b
push eax
push 0x20
push edx
call fcn.004ca8b0
add esp, 0xc
mov eax, dword [ebp - 0x12b4]
test eax, eax
je 0x47721f
add eax, 0xfffffffb
cmp eax, 0xc
jbe 0x476e67
push 0x92c
push str.for_inquire.c
push 2
push 8
call fcn.00480060
add esp, 0x10
mov edx, dword [ebp - 0x1244]
test edx, edx
je 0x479dd1
test byte [edx + 0x1a1], 0x20
jne 0x476ef3
mov eax, dword [ebp - 0x12b4]
add eax, 0xfffffffb
cmp eax, 0xc
ja 0x476ece
movzx eax, word [eax*2 + 0x5016a8]
add eax, 0x476e9b
jmp eax
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x543b10]
jne 0x477bd0
mov eax, 0x30
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
mov eax, dword [edx + 0x20]
test eax, eax
je 0x476e7e
test byte [ebp - 0x12bc], 1
jne 0x476fd8
mov ecx, dword [ebp - 0x12b4]
cmp dword [eax + 0x34], 0
je 0x4798ad
add ecx, 0xfffffffb
cmp ecx, 0xc
ja 0x476fb3
movzx eax, byte [ecx + str.ggKK00]
add eax, 0x476f31
jmp eax
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x543b10]
jne 0x477bd0
mov eax, 0x30
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
add eax, 0x18
push eax
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov ebx, dword [ebp - 0x12c0]
mov edx, ebx
xor eax, eax
mov esi, dword [ebp - 0x12c4]
mov ecx, dword [ebp - 0x1244]
sub edx, eax
jl 0x47b2a1
mov ecx, dword [ecx + 0x20]
mov eax, dword [ecx + 4]
cdq
mov eax, esi
sub eax, dword [ecx + 4]
sbb ebx, edx
jge 0x477992
mov eax, dword [ecx]
lea edx, [esi + esi*4]
test byte [eax + edx*4 + 0x10], 1
je 0x4771eb
add ecx, 0x18
push ecx
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov eax, dword [ebp - 0x12b4]
add eax, 0xfffffffb
cmp eax, 0xc
ja 0x4771c6
movzx eax, word [eax*2 + 0x5016d4]
add eax, 0x47704f
jmp eax
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x543b10]
jne 0x477bd0
mov eax, 0x30
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
add ecx, 0x18
push ecx
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov eax, dword [ebp - 0x12b4]
add eax, 0xfffffffb
cmp eax, 0xc
ja 0x47796d
movzx eax, word [eax*2 + 0x5016f0]
add eax, 0x476e9b
jmp eax
mov edx, dword [ebp - 0x12a4]
test edx, edx
je 0x477403
mov eax, dword [ebp - 0x1244]
test eax, eax
je 0x4773c8
test byte [eax + 0x1a1], 0x20
je 0x4773c8
test byte [eax + 0x1a2], 0x40
je 0x4773c8
movzx eax, byte [eax + 0x197]
cmp eax, 6
ja 0x4773c8
movzx eax, word [eax*2 + 0x50170c]
add eax, 0x477274
jmp eax
mov eax, dword [ebp - 0x12a8]
mov ebx, str.UNDEFINED
xor esi, esi
cmp esi, edx
jge 0x477403
movzx ecx, byte [ebx]
inc esi
mov byte [eax], cl
inc eax
inc ebx
cmp esi, 9
jl 0x4773d5
cmp esi, edx
jge 0x477403
neg esi
add edx, esi
cmp edx, 0x60
jle 0x479d69
push edx
push 0x20
push eax
call fcn.004ca8b0
add esp, 0xc
mov eax, dword [ebp - 0x129c]
test eax, eax
je 0x4774e9
mov edx, dword [ebp - 0x1244]
test edx, edx
je 0x4774ae
test byte [edx + 0x1a1], 0x20
je 0x4774ae
test byte [edx + 0x1a2], 0x40
je 0x4774ae
movzx edx, byte [edx + 0x199]
cmp edx, 1
jbe 0x47747e
cmp edx, 2
jne 0x4774ae
mov edx, dword [ebp - 0x12a0]
mov ebx, str.COMMA
xor esi, esi
cmp esi, eax
jge 0x4774e9
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 5
jl 0x477457
cmp esi, eax
jge 0x4774e9
neg esi
add eax, esi
cmp eax, 0x60
jg 0x4774dd
jmp 0x479a3e
mov edx, dword [ebp - 0x12a0]
mov ebx, str.POINT
xor esi, esi
cmp esi, eax
jge 0x4774e9
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 5
jl 0x47748b
cmp esi, eax
jge 0x4774e9
neg esi
add eax, esi
cmp eax, 0x60
jg 0x4774dd
jmp 0x479a77
mov edx, dword [ebp - 0x12a0]
mov ebx, str.UNDEFINED
xor esi, esi
cmp esi, eax
jge 0x4774e9
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 9
jl 0x4774bb
cmp esi, eax
jge 0x4774e9
neg esi
add eax, esi
cmp eax, 0x60
jle 0x479d30
push eax
push 0x20
push edx
call fcn.004ca8b0
add esp, 0xc
mov eax, dword [ebp - 0x1294]
test eax, eax
je 0x477618
mov edx, dword [ebp - 0x1244]
test edx, edx
je 0x4775dd
test byte [edx + 0x1a1], 0x20
je 0x4775dd
test byte [edx + 0x1a2], 0x40
je 0x4775dd
movzx edx, byte [edx + 0x19b]
cmp edx, 1
jbe 0x4775ad
cmp edx, 2
je 0x477579
cmp edx, 3
jne 0x4775dd
mov edx, dword [ebp - 0x1298]
mov ebx, str.SUPPRESS
xor esi, esi
cmp esi, eax
jge 0x477618
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 8
jl 0x47754a
cmp esi, eax
jge 0x477618
neg esi
add eax, esi
cmp eax, 0x60
jg 0x47760c
jmp 0x479ab0
mov edx, dword [ebp - 0x1298]
mov ebx, str.PLUS
xor esi, esi
cmp esi, eax
jge 0x477618
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 4
jl 0x477586
cmp esi, eax
jge 0x477618
neg esi
add eax, esi
cmp eax, 0x60
jg 0x47760c
jmp 0x479ae9
mov edx, dword [ebp - 0x1298]
mov ebx, str.PROCESSOR_DEFINED
xor esi, esi
cmp esi, eax
jge 0x477618
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 0x11
jl 0x4775ba
cmp esi, eax
jge 0x477618
neg esi
add eax, esi
cmp eax, 0x60
jg 0x47760c
jmp 0x479b22
mov edx, dword [ebp - 0x1298]
mov ebx, str.UNDEFINED
xor esi, esi
cmp esi, eax
jge 0x477618
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 9
jl 0x4775ea
cmp esi, eax
jge 0x477618
neg esi
add eax, esi
cmp eax, 0x60
jle 0x479cf7
push eax
push 0x20
push edx
call fcn.004ca8b0
add esp, 0xc
mov eax, dword [ebp - 0x128c]
test eax, eax
je 0x477732
mov edx, dword [ebp - 0x1244]
test edx, edx
je 0x479c87
test byte [edx + 0x1a1], 0x20
je 0x477682
test byte [edx + 0x1a2], 0x40
jne 0x477682
mov edx, dword [ebp - 0x1290]
mov ebx, str.UNDEFINED
xor esi, esi
cmp esi, eax
jge 0x477732
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 9
jl 0x477653
cmp esi, eax
jge 0x477732
neg esi
add eax, esi
cmp eax, 0x60
jg 0x477726
jmp 0x479b5b
movzx edx, byte [edx + 0x19d]
cmp edx, 1
jbe 0x4776f7
cmp edx, 2
je 0x4776c7
mov edx, dword [ebp - 0x1290]
mov ebx, str.UNKNOWN
xor esi, esi
cmp esi, eax
jge 0x477732
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 7
jl 0x4776a0
cmp esi, eax
jge 0x477732
neg esi
add eax, esi
cmp eax, 0x60
jg 0x477726
jmp 0x479b94
mov edx, dword [ebp - 0x1290]
mov ebx, 0x501000
xor esi, esi
cmp esi, eax
jge 0x477732
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 5
jl 0x4776d4
cmp esi, eax
jge 0x477732
neg esi
add eax, esi
cmp eax, 0x60
jg 0x477726
jmp 0x479bcd
mov edx, dword [ebp - 0x1290]
mov ebx, str.UNKNOWN
xor esi, esi
cmp esi, eax
jge 0x477732
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 7
jl 0x477704
cmp esi, eax
jge 0x477732
neg esi
add eax, esi
cmp eax, 0x60
jle 0x479c4e
push eax
push 0x20
push edx
call fcn.004ca8b0
add esp, 0xc
mov eax, dword [ebp - 0x1284]
test eax, eax
je 0x477840
mov edx, dword [ebp - 0x1244]
test edx, edx
je 0x477753
test byte [edx + 0x1a1], 0x20
jne 0x477790
test edi, edi
jne 0x47775e
mov edx, 1
jmp 0x4777cf
lea eax, [ebp - 0x1240]
push eax
push 0
lea edx, [ebp - 0x121c]
push edx
call dword [sym.imp.KERNEL32.dll_GetFileAttributesExA]
mov edx, eax
mov eax, dword [ebp - 0x1284]
test edx, edx
je 0x477757
mov ecx, dword [ebp - 0x1224]
xor edx, edx
mov ebx, dword [ebp - 0x1220]
jmp 0x4777cf
xor eax, eax
push eax
push eax
push edx
call fcn.00482e60
add esp, 0xc
mov edx, dword [ebp - 0x1244]
lea eax, [ebp - 0x15b8]
push eax
push dword [edx + 0x104]
call dword [sym.imp.KERNEL32.dll_GetFileSize]
mov ebx, eax
cmp ebx, 0xffffffff
je 0x479c30
mov ecx, dword [ebp - 0x15b8]
xor edx, edx
mov eax, dword [ebp - 0x1284]
add eax, 0xfffffffb
cmp eax, 0xc
ja 0x477948
movzx eax, byte [eax + str.FF22]
add eax, 0x4777e9
jmp eax
mov eax, dword [ebp - 0x1244]
test eax, eax
je 0x477926
and byte [eax + 0x1a4], 0xdc
and byte [eax + 0x1ae], 0xef
and byte [eax + 0x1a6], 0xf7
mov eax, dword [ebp - 0x1244]
push dword [eax + 0x124]
call fcn.0047cad0
add esp, 4
test eax, eax
je 0x477926
mov ecx, dword [ebp - 0x1244]
mov edx, dword [ecx + 0x20]
test edx, edx
je 0x479c06
test byte [edx + 0x44], 2
je 0x4778e0
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x1244]
mov ecx, dword [edx + 0x20]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x1244]
mov edx, dword [ebx + 0x7c]
test edx, edx
je 0x4778c0
xor ecx, ecx
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x1244]
mov dword [edx + 0x7c], ecx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x543b10]
jne 0x477bd0
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.004865b0
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x543b10]
jne 0x477bd0
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 [0x543b10]
jne 0x477bd0
xor eax, eax
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 [0x543b10]
jne 0x477bd0
mov eax, 0x30
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 [0x543b10]
jne 0x477bd0
mov eax, 0x30
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
add ecx, 0x18
push ecx
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov ebx, dword [ebp - 0x1244]
mov eax, dword [ebx + 0x20]
test eax, eax
je 0x479da2
test byte [eax + 0x44], 2
je 0x477a07
mov edx, 0x66
mov dword [eax + 0x38], edx
mov eax, dword [ebp - 0x1244]
mov ecx, dword [eax + 0x20]
mov dword [ecx + 0x3c], edx
mov ebx, dword [ebp - 0x1244]
mov eax, dword [ebx + 0x7c]
test eax, eax
je 0x4779e2
xor edx, edx
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x1244]
mov dword [eax + 0x7c], edx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x543b10]
jne 0x477bd0
mov eax, 0x66
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
movzx edx, byte [ebx + 0x1ae]
mov eax, 0x66
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.004865b0
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x543b10]
jne 0x477bd0
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
mov edx, dword [eax + 0x20]
test edx, edx
je 0x47a9de
test byte [edx + 0x44], 2
je 0x477ab7
mov eax, 0x30
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x1244]
mov ecx, dword [edx + 0x20]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x1244]
mov eax, dword [ebx + 0x7c]
test eax, eax
je 0x477a92
xor edx, edx
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x1244]
mov dword [eax + 0x7c], edx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x543b10]
jne 0x477bd0
mov eax, 0x30
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
movzx ecx, byte [eax + 0x1ae]
mov edx, 0x30
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.004865b0
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x543b10]
jne 0x477bd0
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
mov ecx, dword [ebp - 0x1244]
test ecx, ecx
je 0x47b0c7
mov edx, dword [ecx + 0x20]
test edx, edx
je 0x47b09d
test byte [edx + 0x44], 2
je 0x477b69
mov dword [edx + 0x38], esi
mov edx, dword [ebp - 0x1244]
mov ecx, dword [edx + 0x20]
mov dword [ecx + 0x3c], esi
mov ebx, dword [ebp - 0x1244]
mov edx, dword [ebx + 0x7c]
test edx, edx
je 0x477b4b
xor ecx, ecx
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x1244]
mov dword [edx + 0x7c], ecx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x543b10]
jne 0x477bd0
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.004865b0
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x543b10]
jne 0x477bd0
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 [0x543b10]
jne 0x477bd0
mov eax, ebx
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
mov ecx, edx
call fcn.004cf95b
call fcn.004cf95b
push ebx
push ecx
push ecx
push 0
call fcn.0047ead0
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x543b10]
jne 0x477bd0
jmp 0x474716
cmp dword [ebp - 0x12dc], 0
jne 0x4747cf
cmp dword [ebp - 0x1240], 0
jl 0x477c26
push dword [ebp - 0x15b8]
push dword [ebp - 0x1240]
push ebx
call fcn.00485860
add esp, 0xc
push 0xf
push ebx
lea eax, [ebp - 0x1244]
push eax
push dword [ebp - 0x1240]
call fcn.0047b2c0
mov esi, eax
add esp, 0x10
test esi, esi
je 0x477e17
cmp esi, 0x20
je 0x477f35
mov edx, dword [ebp + 0x10]
mov dword [ebp - 0x15b4], edx
shr edx, 0x18
movzx edx, dl
test edx, 0x80
je 0x477c72
lea edx, [ebp + 0x1f]
and edx, 0xfffffffc
mov ebx, dword [edx]
jmp 0x477c74
xor ebx, ebx
shr ebx, 0xf
movzx edx, byte [ebp - 0x15b4]
and ebx, 1
and edx, 1
or edx, ebx
je 0x477df0
cmp dword [ebp - 0x12b0], 0
je 0x477dcd
lea edx, [ebp - 0x15b8]
push edx
push dword [ebp - 0x1240]
call fcn.0047c800
add esp, 8
test eax, eax
jne 0x477dcd
mov ecx, dword [ebp - 0x15b8]
movzx edi, byte [ebp - 0x15b4]
and edi, 1
movzx edx, byte [ecx + 0x1a4]
and edx, 0xfffffffe
or edx, edi
mov byte [ecx + 0x1a4], dl
mov ecx, dword [ebp - 0x15b8]
shl ebx, 4
movzx edx, byte [ecx + 0x1ae]
and edx, 0xffffffef
or edx, ebx
mov byte [ecx + 0x1ae], dl
mov edx, dword [ebp - 0x15b8]
mov ebx, dword [ebp - 0x12ac]
mov dword [edx + 0x114], ebx
mov ecx, dword [ebp - 0x15b8]
mov edx, dword [ebp - 0x12b0]
mov dword [ecx + 0x9c], edx
mov edx, dword [ebp - 0x15b8]
and byte [edx + 0x1ad], 0xf7
mov ecx, dword [ebp - 0x15b8]
mov edx, dword [ecx + 0x20]
test edx, edx
je 0x477f0b
test byte [edx + 0x44], 2
je 0x477d87
mov dword [edx + 0x38], esi
mov edx, dword [ebp - 0x15b8]
mov ecx, dword [edx + 0x20]
mov dword [ecx + 0x3c], esi
mov ebx, dword [ebp - 0x15b8]
mov edx, dword [ebx + 0x7c]
test edx, edx
je 0x477d65
xor ecx, ecx
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x15b8]
mov dword [edx + 0x7c], ecx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x543b10]
jne 0x477bd0
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.004865b0
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x543b10]
jne 0x477bd0
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
movzx eax, si
cmp ecx, dword [0x543b10]
jne 0x477bd0
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
push str.unknown
push dword [ebp - 0x1240]
push 2
push esi
call fcn.00480060
add esp, 0x10
mov ecx, dword [ebp - 0x1244]
xor edx, edx
test ecx, ecx
jne 0x477e3f
jmp 0x4782c6
mov ecx, dword [ebp - 0x1244]
mov edx, dword [ebp - 0x1240]
test ecx, ecx
je 0x4782bc
movzx eax, byte [ecx + 0x1a0]
and eax, 0x10
shr eax, 3
dec eax
mov dword [ebp - 0x125c], eax
movzx ebx, byte [ebp + 0x10]
movzx eax, byte [ecx + 0x1a4]
mov dword [ebp - 0x15b0], ebx
and ebx, 1
and eax, 0xfffffffe
or eax, ebx
mov byte [ecx + 0x1a4], al
movzx ecx, byte [ebp + 0x13]
mov dword [ebp - 0x15ac], ecx
and ecx, 0x80
mov dword [ebp - 0x15a8], ebx
shr ecx, 7
mov dword [ebp - 0x15b4], ecx
je 0x477e89
lea eax, [ebp + 0x1f]
and eax, 0xfffffffc
mov ecx, dword [eax]
jmp 0x477e8b
xor ecx, ecx
mov ebx, dword [ebp - 0x1244]
shr ecx, 0xf
and ecx, 1
movzx eax, byte [ebx + 0x1ae]
shl ecx, 4
and eax, 0xffffffef
or eax, ecx
mov byte [ebx + 0x1ae], al
mov esi, dword [ebp - 0x1244]
mov ecx, dword [ebp - 0x12b0]
mov dword [esi + 0x9c], ecx
mov ecx, dword [ebp - 0x1244]
mov eax, dword [ebp - 0x12ac]
mov dword [ecx + 0x114], eax
mov ecx, dword [ebp - 0x1244]
test ecx, ecx
je 0x4782c6
movzx eax, byte [ecx + 0x1a1]
test al, 0x20
jne 0x477ef6
test al, 0x18
je 0x477ef6
test byte [ecx + 0x1aa], 4
je 0x477f4a
mov esi, edx
xor ebx, ebx
and esi, 0xfffffffe
cmp esi, 0xfffffffa
je 0x474c9b
jmp 0x474d61
push ecx
push esi
push esi
push 0
call fcn.0047ead0
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x543b10]
jne 0x477bd0
jmp 0x474716
mov dword [ebp - 0x125c], 0
mov ecx, dword [ebp - 0x1244]
jmp 0x477e0c
movzx eax, byte [ecx + 0x1a4]
and eax, 0xfffffffe
or eax, dword [ebp - 0x15a8]
mov byte [ecx + 0x1a4], al
mov ecx, dword [ebp - 0x1244]
mov esi, dword [ebp - 0x15b0]
shr esi, 7
movzx ebx, byte [ecx + 0x1a0]
and ebx, 0xfffffffe
or ebx, esi
mov byte [ecx + 0x1a0], bl
mov esi, dword [ebp - 0x1244]
movzx ebx, byte [ebp + 0x12]
shr ebx, 2
and ebx, 1
movzx eax, byte [esi + 0x1a0]
add ebx, ebx
and eax, 0xfffffffd
or eax, ebx
mov byte [esi + 0x1a0], al
mov eax, dword [ebp - 0x15ac]
shr eax, 3
and eax, 1
mov ebx, dword [ebp - 0x1244]
mov dword [ebp - 0x15b8], eax
movzx ecx, byte [ebx + 0x1a0]
shl eax, 2
and ecx, 0xfffffffb
or ecx, eax
mov byte [ebx + 0x1a0], cl
cmp dword [ebp - 0x15b4], 0
je 0x477feb
lea eax, [ebp + 0x1f]
and eax, 0xfffffffc
mov ecx, dword [eax]
mov dword [ebp - 0x15b0], ecx
jmp 0x477ff5
mov dword [ebp - 0x15b0], 0
mov esi, dword [ebp - 0x15ac]
mov eax, esi
mov ebx, dword [ebp - 0x1244]
shr eax, 2
and eax, 1
movzx ecx, byte [ebx + 0x1a0]
shl eax, 3
and ecx, 0xfffffff7
or ecx, eax
mov eax, esi
mov byte [ebx + 0x1a0], cl
mov ecx, dword [ebp - 0x1244]
shr eax, 6
and eax, 1
mov dword [ebp - 0x127c], edx
movzx edx, byte [ecx + 0x1a0]
shl eax, 4
and edx, 0xffffffef
or edx, eax
mov byte [ecx + 0x1a0], dl
mov ecx, dword [ebp - 0x1244]
mov ebx, dword [ebp - 0x15b8]
mov edx, ebx
shl edx, 5
movzx eax, byte [ecx + 0x1a0]
and eax, 0xffffffdf
or eax, edx
mov byte [ecx + 0x1a0], al
mov eax, esi
mov edx, dword [ebp - 0x1244]
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 - 0x1244]
shl ebx, 3
shr esi, 5
movzx edx, byte [eax + 0x1a9]
and esi, 1
and edx, 0xfffffff7
or edx, ebx
mov ebx, esi
mov byte [eax + 0x1a9], dl
mov edx, dword [ebp - 0x1244]
shl ebx, 6
shl esi, 7
movzx eax, byte [edx + 0x1a0]
and eax, 0xffffffbf
or eax, ebx
mov byte [edx + 0x1a0], al
mov ecx, dword [ebp - 0x1244]
movzx eax, byte [ecx + 0x1a0]
and eax, 0x7f
or eax, esi
mov byte [ecx + 0x1a0], al
mov ecx, dword [ebp - 0x1244]
mov eax, dword [ebp - 0x15b0]
mov esi, eax
and esi, 1
mov ebx, eax
movzx edx, byte [ecx + 0x1a1]
and edx, 0xfffffffe
or edx, esi
mov byte [ecx + 0x1a1], dl
mov edx, eax
mov esi, dword [ebp - 0x1244]
shr edx, 1
and edx, 1
movzx ecx, byte [esi + 0x1a9]
shl edx, 5
and ecx, 0xffffffdf
or ecx, edx
mov byte [esi + 0x1a9], cl
mov ecx, eax
mov esi, dword [ebp - 0x1244]
shr ebx, 2
and ebx, 3
movzx edx, byte [esi + 0x1a1]
add ebx, ebx
and edx, 0xfffffff9
or edx, ebx
mov byte [esi + 0x1a1], dl
mov edx, eax
mov esi, dword [ebp - 0x1244]
shr ecx, 9
and ecx, 1
movzx ebx, byte [esi + 0x1ac]
shl ecx, 3
and ebx, 0xfffffff7
or ebx, ecx
mov byte [esi + 0x1ac], bl
mov ebx, eax
mov esi, dword [ebp - 0x1244]
and ebx, 0xffffff80
shr edx, 0xa
mov dword [ebp - 0x15b4], edx
movzx edx, byte [esi + 0x1ab]
and edx, 0x7f
or edx, ebx
mov byte [esi + 0x1ab], dl
mov edx, eax
mov ebx, dword [ebp - 0x1244]
shr edx, 7
and edx, 0xffffff80
movzx ecx, byte [ebx + 0x1ad]
and ecx, 0x7f
or ecx, edx
mov byte [ebx + 0x1ad], cl
mov ecx, eax
mov esi, dword [ebp - 0x1244]
shr ecx, 0xf
and ecx, 1
movzx edx, byte [esi + 0x1ae]
shl ecx, 4
and edx, 0xffffffef
or edx, ecx
mov byte [esi + 0x1ae], dl
mov edx, eax
mov ecx, dword [ebp - 0x1244]
shr edx, 0x10
and edx, 1
movzx ebx, byte [ecx + 0x1ae]
shl edx, 5
and ebx, 0xffffffdf
or ebx, edx
mov byte [ecx + 0x1ae], bl
mov ebx, eax
mov esi, dword [ebp - 0x1244]
shr ebx, 0x11
and ebx, 1
movzx ecx, byte [esi + 0x1ae]
shl ebx, 6
and ecx, 0xffffffbf
or ecx, ebx
mov byte [esi + 0x1ae], cl
mov ecx, eax
mov ebx, dword [ebp - 0x1244]
shr ecx, 0xb
and ecx, 0xffffff80
movzx edx, byte [ebx + 0x1ae]
and edx, 0x7f
or edx, ecx
mov byte [ebx + 0x1ae], dl
mov ecx, dword [ebp - 0x1244]
shr eax, 0x13
and eax, 1
movzx edx, byte [ecx + 0x1af]
and edx, 0xfffffffe
or edx, eax
mov byte [ecx + 0x1af], dl
mov ebx, dword [ebp - 0x1244]
mov edx, dword [ebp - 0x127c]
movzx eax, byte [ebx + 0x1ac]
btr eax, 4
jb 0x478292
mov ecx, dword [ebp - 0x15b4]
and ecx, 1
shl ecx, 4
or eax, ecx
mov byte [ebx + 0x1ac], al
mov ebx, dword [ebp - 0x1244]
mov eax, 0xffffffff
push eax
push eax
push eax
push ebx
mov dword [ebp - 0x127c], edx
call fcn.0045b5a0
mov edx, dword [ebp - 0x127c]
add esp, 0x10
mov ecx, dword [ebp - 0x1244]
xor ebx, ebx
jmp 0x4747df
mov dword [ebp - 0x125c], 0xffffffff
mov esi, edx
xor ebx, ebx
and esi, 0xfffffffe
cmp esi, 0xfffffffa
je 0x474cbb
jmp 0x474d61
cmp dword [ebp - 0x12b0], 0
je 0x478418
lea edx, [ebp - 0x15b8]
push edx
push 0
call fcn.0047c800
add esp, 8
test eax, eax
jne 0x478418
mov ebx, dword [ebp - 0x15b8]
movzx ecx, byte [ebp - 0x125c]
and ecx, 1
movzx edx, byte [ebx + 0x1a4]
and edx, 0xfffffffe
or edx, ecx
mov byte [ebx + 0x1a4], dl
mov ecx, dword [ebp - 0x15b8]
shl esi, 4
movzx edx, byte [ecx + 0x1ae]
and edx, 0xffffffef
or edx, esi
mov byte [ecx + 0x1ae], dl
mov edx, dword [ebp - 0x15b8]
mov esi, dword [ebp - 0x12ac]
mov dword [edx + 0x114], esi
mov ecx, dword [ebp - 0x15b8]
mov edx, dword [ebp - 0x12b0]
mov dword [ecx + 0x9c], edx
mov edx, dword [ebp - 0x15b8]
and byte [edx + 0x1ad], 0xf7
mov ecx, dword [ebp - 0x15b8]
mov edx, dword [ecx + 0x20]
test edx, edx
je 0x47843b
test byte [edx + 0x44], 2
je 0x4783d2
mov dword [edx + 0x38], edi
mov edx, dword [ebp - 0x15b8]
mov ecx, dword [edx + 0x20]
mov dword [ecx + 0x3c], edi
mov ebx, dword [ebp - 0x15b8]
mov edx, dword [ebx + 0x7c]
test edx, edx
je 0x4783b0
xor ecx, ecx
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x15b8]
mov dword [edx + 0x7c], ecx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x543b10]
jne 0x477bd0
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.004865b0
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x543b10]
jne 0x477bd0
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
movzx eax, di
cmp ecx, dword [0x543b10]
jne 0x477bd0
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
push ecx
push edi
push edi
push 0
call fcn.0047ead0
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x543b10]
jne 0x477bd0
jmp 0x474716
mov ebx, dword [ebp - 0x15b8]
mov edx, edi
mov edi, dword [ebp - 0x1260]
mov esi, dword [ebp - 0x124c]
mov ecx, dword [ebp - 0x1244]
jmp 0x474c6b
mov edx, edi
mov ebx, dword [ebp - 0x15b8]
mov edi, dword [ebp - 0x1260]
mov esi, dword [ebp - 0x124c]
test edx, edx
je 0x4784b1
push edx
mov dword [ebp - 0x127c], edx
call fcn.0047cad0
mov edx, dword [ebp - 0x127c]
add esp, 4
mov dword [ebp - 0x1244], 0
mov dword [ebp - 0x127c], edx
lea ecx, [ebp - 0x1244]
push ecx
push 0xf
lea ecx, [ebp - 0x121c]
push ecx
call fcn.00484d40
mov edx, dword [ebp - 0x127c]
add esp, 0xc
test eax, eax
jne 0x4784f2
mov ecx, dword [ebp - 0x1244]
test ecx, ecx
je 0x478512
jmp 0x474c73
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x543b10]
jne 0x477bd0
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
mov dword [ebp - 0x127c], edx
lea ecx, [ebp - 0x121c]
push ecx
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
mov edx, dword [ebp - 0x127c]
cmp eax, 0xffffffff
jne 0x47858f
test esi, esi
jne 0x47857a
mov dword [ebp - 0x127c], edx
lea ecx, [ebp - 0x121c]
push ecx
lea esi, [ebp - 0x15b4]
push esi
call fcn.0045b3e0
mov edx, dword [ebp - 0x127c]
add esp, 8
cmp eax, 0xffffffff
je 0x47857a
movzx ecx, byte [ebp - 0x1414]
and ecx, 0x10
shr ecx, 3
dec ecx
mov dword [ebp - 0x125c], ecx
mov ecx, dword [ebp - 0x1244]
jmp 0x4747df
mov dword [ebp - 0x125c], 0
mov ecx, dword [ebp - 0x1244]
jmp 0x4747df
test al, 0x10
je 0x478599
test esi, esi
jne 0x47855b
jmp 0x47857a
test esi, esi
je 0x47855b
jmp 0x47857a
mov esi, edx
mov edx, edi
mov edi, eax
cmp dword [ebp - 0x12b0], 0
je 0x4786e1
lea ecx, [ebp - 0x15b8]
push ecx
push edx
call fcn.0047c800
add esp, 8
test eax, eax
jne 0x4786e1
mov ebx, dword [ebp - 0x15b8]
movzx ecx, byte [ebp - 0x127c]
and ecx, 1
movzx edx, byte [ebx + 0x1a4]
and edx, 0xfffffffe
or edx, ecx
mov byte [ebx + 0x1a4], dl
mov ebx, dword [ebp - 0x15b8]
shl esi, 4
movzx ecx, byte [ebx + 0x1ae]
and ecx, 0xffffffef
or ecx, esi
mov byte [ebx + 0x1ae], cl
mov edx, dword [ebp - 0x15b8]
mov esi, dword [ebp - 0x12ac]
mov dword [edx + 0x114], esi
mov ecx, dword [ebp - 0x15b8]
mov edx, dword [ebp - 0x12b0]
mov dword [ecx + 0x9c], edx
mov edx, dword [ebp - 0x15b8]
and byte [edx + 0x1ad], 0xf7
mov ecx, dword [ebp - 0x15b8]
mov edx, dword [ecx + 0x20]
test edx, edx
je 0x478704
test byte [edx + 0x44], 2
je 0x47869b
mov dword [edx + 0x38], edi
mov edx, dword [ebp - 0x15b8]
mov ecx, dword [edx + 0x20]
mov dword [ecx + 0x3c], edi
mov ebx, dword [ebp - 0x15b8]
mov edx, dword [ebx + 0x7c]
test edx, edx
je 0x478679
xor ecx, ecx
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x15b8]
mov dword [edx + 0x7c], ecx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x543b10]
jne 0x477bd0
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.004865b0
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x543b10]
jne 0x477bd0
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
movzx eax, di
cmp ecx, dword [0x543b10]
jne 0x477bd0
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
push ecx
push edi
push edi
push 0
call fcn.0047ead0
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x543b10]
jne 0x477bd0
jmp 0x474716
push ecx
push eax
push eax
push 1
call fcn.0047ead0
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x543b10]
jne 0x477bd0
jmp 0x474716
mov ebx, eax
shr ebx, 1
je 0x47878a
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x478765
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x474f77
mov byte [ebx + edx - 1], 0x20
jmp 0x474f77
mov ebx, 1
jmp 0x478775
mov ebx, eax
shr ebx, 1
je 0x4787c3
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47879e
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x474f77
mov byte [ebx + edx - 1], 0x20
jmp 0x474f77
mov ebx, 1
jmp 0x4787ae
push edx
mov eax, 0x30
push eax
push eax
push 1
call fcn.0047ead0
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x543b10]
jne 0x477bd0
jmp 0x474716
mov ebx, eax
shr ebx, 1
je 0x47882b
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x478806
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x474f77
mov byte [ebx + edx - 1], 0x20
jmp 0x474f77
mov ebx, 1
jmp 0x478816
mov ebx, eax
shr ebx, 1
je 0x478864
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47883f
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x475044
mov byte [ebx + edx - 1], 0x20
jmp 0x475044
mov ebx, 1
jmp 0x47884f
mov ebx, eax
shr ebx, 1
je 0x47889d
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x478878
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x475044
mov byte [ebx + edx - 1], 0x20
jmp 0x475044
mov ebx, 1
jmp 0x478888
mov edx, eax
shr edx, 1
je 0x4788de
xor ebx, ebx
mov ecx, 0x20
mov byte [esi + ebx*2], cl
mov byte [esi + ebx*2 + 1], cl
inc ebx
cmp ebx, edx
jb 0x4788b1
mov dword [ebp - 0x15b8], esi
lea ecx, [ebx + ebx + 1]
lea edx, [ecx - 1]
cmp edx, eax
jae 0x47514d
mov eax, esi
mov byte [ecx + eax - 1], 0x20
jmp 0x47514d
mov ecx, 1
jmp 0x4788c7
mov ebx, eax
shr ebx, 1
je 0x478917
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x4788f2
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x47514d
mov byte [ebx + edx - 1], 0x20
jmp 0x47514d
mov ebx, 1
jmp 0x478902
mov ebx, eax
shr ebx, 1
je 0x478950
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47892b
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x475223
mov byte [ebx + edx - 1], 0x20
jmp 0x475223
mov ebx, 1
jmp 0x47893b
mov ebx, eax
shr ebx, 1
je 0x478989
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x478964
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x475223
mov byte [ebx + edx - 1], 0x20
jmp 0x475223
mov ebx, 1
jmp 0x478974
mov edx, esi
shr edx, 1
je 0x4789c2
xor ecx, ecx
mov eax, 0x20
mov byte [ebx + ecx*2], al
mov byte [ebx + ecx*2 + 1], al
inc ecx
cmp ecx, edx
jb 0x47899d
lea edx, [ecx + ecx + 1]
lea eax, [edx - 1]
cmp eax, esi
jae 0x4752c7
mov byte [ebx + edx - 1], 0x20
jmp 0x4752c7
mov edx, 1
jmp 0x4789ad
mov edi, dword [ebp - 0x1260]
jmp 0x4752c7
test byte [ebp + 0x13], 8
je 0x4752b6
test byte [eax + 0x1a1], 0x20
jne 0x4752b6
mov eax, dword [ebp - 0x1374]
mov ebx, str.UNKNOWN
xor esi, esi
cmp esi, ecx
jge 0x4752c7
movzx edx, byte [ebx]
inc esi
mov byte [eax], dl
inc eax
inc ebx
cmp esi, 7
jl 0x4789f8
cmp esi, ecx
jge 0x4752c7
neg esi
add ecx, esi
cmp ecx, 0x60
jle 0x478a2c
push ecx
push 0x20
push eax
call fcn.004ca8b0
jmp 0x4752c4
mov ebx, ecx
shr ebx, 1
je 0x478a5e
xor esi, esi
mov edx, 0x20
mov byte [eax + esi*2], dl
mov byte [eax + esi*2 + 1], dl
inc esi
cmp esi, ebx
jb 0x478a39
lea ebx, [esi + esi + 1]
lea edx, [ebx - 1]
cmp edx, ecx
jae 0x4752c7
mov byte [ebx + eax - 1], 0x20
jmp 0x4752c7
mov ebx, 1
jmp 0x478a49
movzx edx, byte [eax + 0x1a1]
and edx, 0x18
cmp edx, 0x10
je 0x475256
add ebx, 0x8000
cmp ebx, 0x7f7f
jbe 0x475256
jmp 0x4789d4
push edx
mov eax, 0x30
push eax
push eax
push 1
call fcn.0047ead0
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x543b10]
jne 0x477bd0
jmp 0x474716
mov ebx, eax
shr ebx, 1
je 0x478af0
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x478acb
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x475529
mov byte [ebx + edx - 1], 0x20
jmp 0x475529
mov ebx, 1
jmp 0x478adb
mov ebx, eax
shr ebx, 1
je 0x478b29
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x478b04
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x475529
mov byte [ebx + edx - 1], 0x20
jmp 0x475529
mov ebx, 1
jmp 0x478b14
mov edx, eax
shr edx, 1
je 0x478d30
xor ebx, ebx
mov ecx, 0x20
mov byte [esi + ebx*2], cl
mov byte [esi + ebx*2 + 1], cl
inc ebx
cmp ebx, edx
jb 0x478d03
mov dword [ebp - 0x15b8], esi
lea ecx, [ebx + ebx + 1]
lea edx, [ecx - 1]
cmp edx, eax
jae 0x475a46
mov eax, esi
mov byte [ecx + eax - 1], 0x20
jmp 0x475a46
mov ecx, 1
jmp 0x478d19
mov ebx, eax
shr ebx, 1
je 0x478d69
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x478d44
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x475a46
mov byte [ebx + edx - 1], 0x20
jmp 0x475a46
mov ebx, 1
jmp 0x478d54
mov ebx, eax
shr ebx, 1
je 0x478da2
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x478d7d
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x475a46
mov byte [ebx + edx - 1], 0x20
jmp 0x475a46
mov ebx, 1
jmp 0x478d8d
mov ebx, eax
shr ebx, 1
je 0x478ddb
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x478db6
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x475b13
mov byte [ebx + edx - 1], 0x20
jmp 0x475b13
mov ebx, 1
jmp 0x478dc6
mov ebx, eax
shr ebx, 1
je 0x478e14
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x478def
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x475b13
mov byte [ebx + edx - 1], 0x20
jmp 0x475b13
mov ebx, 1
jmp 0x478dff
mov edx, eax
shr edx, 1
je 0x478e55
xor ebx, ebx
mov ecx, 0x20
mov byte [esi + ebx*2], cl
mov byte [esi + ebx*2 + 1], cl
inc ebx
cmp ebx, edx
jb 0x478e28
mov dword [ebp - 0x15b8], esi
lea ecx, [ebx + ebx + 1]
lea edx, [ecx - 1]
cmp edx, eax
jae 0x475c8d
mov eax, esi
mov byte [ecx + eax - 1], 0x20
jmp 0x475c8d
mov ecx, 1
jmp 0x478e3e
mov edx, eax
shr edx, 1
je 0x478e96
xor ebx, ebx
mov ecx, 0x20
mov byte [esi + ebx*2], cl
mov byte [esi + ebx*2 + 1], cl
inc ebx
cmp ebx, edx
jb 0x478e69
mov dword [ebp - 0x15b8], esi
lea ecx, [ebx + ebx + 1]
lea edx, [ecx - 1]
cmp edx, eax
jae 0x475c8d
mov eax, esi
mov byte [ecx + eax - 1], 0x20
jmp 0x475c8d
mov ecx, 1
jmp 0x478e7f
mov ebx, eax
shr ebx, 1
je 0x478ecf
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x478eaa
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x475c8d
mov byte [ebx + edx - 1], 0x20
jmp 0x475c8d
mov ebx, 1
jmp 0x478eba
mov ebx, eax
shr ebx, 1
je 0x478f08
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x478ee3
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x475dcb
mov byte [ebx + edx - 1], 0x20
jmp 0x475dcb
mov ebx, 1
jmp 0x478ef3
mov edx, eax
shr edx, 1
je 0x478f49
xor ebx, ebx
mov ecx, 0x20
mov byte [esi + ebx*2], cl
mov byte [esi + ebx*2 + 1], cl
inc ebx
cmp ebx, edx
jb 0x478f1c
mov dword [ebp - 0x15b8], esi
lea ecx, [ebx + ebx + 1]
lea edx, [ecx - 1]
cmp edx, eax
jae 0x475dcb
mov eax, esi
mov byte [ecx + eax - 1], 0x20
jmp 0x475dcb
mov ecx, 1
jmp 0x478f32
mov ebx, eax
shr ebx, 1
je 0x478f82
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x478f5d
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x475dcb
mov byte [ebx + edx - 1], 0x20
jmp 0x475dcb
mov ebx, 1
jmp 0x478f6d
push edx
mov eax, 0x30
push eax
push eax
push 1
call fcn.0047ead0
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x543b10]
jne 0x477bd0
jmp 0x474716
mov ebx, eax
shr ebx, 1
je 0x478fea
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x478fc5
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x476009
mov byte [ebx + edx - 1], 0x20
jmp 0x476009
mov ebx, 1
jmp 0x478fd5
mov edx, eax
shr edx, 1
je 0x47902b
xor ebx, ebx
mov ecx, 0x20
mov byte [esi + ebx*2], cl
mov byte [esi + ebx*2 + 1], cl
inc ebx
cmp ebx, edx
jb 0x478ffe
mov dword [ebp - 0x15b8], esi
lea ecx, [ebx + ebx + 1]
lea edx, [ecx - 1]
cmp edx, eax
jae 0x476009
mov eax, esi
mov byte [ecx + eax - 1], 0x20
jmp 0x476009
mov ecx, 1
jmp 0x479014
mov ebx, eax
shr ebx, 1
je 0x479064
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47903f
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x476009
mov byte [ebx + edx - 1], 0x20
jmp 0x476009
mov ebx, 1
jmp 0x47904f
mov ebx, eax
shr ebx, 1
je 0x47909d
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x479078
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x476009
mov byte [ebx + edx - 1], 0x20
jmp 0x476009
mov ebx, 1
jmp 0x479088
mov ebx, eax
shr ebx, 1
je 0x4790d6
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x4790b1
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x4760d6
mov byte [ebx + edx - 1], 0x20
jmp 0x4760d6
mov ebx, 1
jmp 0x4790c1
mov ebx, eax
shr ebx, 1
je 0x47910f
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x4790ea
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x4760d6
mov byte [ebx + edx - 1], 0x20
jmp 0x4760d6
mov ebx, 1
jmp 0x4790fa
mov ebx, eax
shr ebx, 1
je 0x479148
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x479123
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x476333
mov byte [ebx + edx - 1], 0x20
jmp 0x476333
mov ebx, 1
jmp 0x479133
mov ebx, eax
shr ebx, 1
je 0x479181
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47915c
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x476333
mov byte [ebx + edx - 1], 0x20
jmp 0x476333
mov ebx, 1
jmp 0x47916c
mov ebx, eax
shr ebx, 1
je 0x4791ba
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x479195
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x476333
mov byte [ebx + edx - 1], 0x20
jmp 0x476333
mov ebx, 1
jmp 0x4791a5
mov edx, eax
shr edx, 1
je 0x4791fb
xor ebx, ebx
mov ecx, 0x20
mov byte [esi + ebx*2], cl
mov byte [esi + ebx*2 + 1], cl
inc ebx
cmp ebx, edx
jb 0x4791ce
mov dword [ebp - 0x15b8], esi
lea ecx, [ebx + ebx + 1]
lea edx, [ecx - 1]
cmp edx, eax
jae 0x476333
mov eax, esi
mov byte [ecx + eax - 1], 0x20
jmp 0x476333
mov ecx, 1
jmp 0x4791e4
mov edx, eax
shr edx, 1
je 0x47923c
xor ebx, ebx
mov ecx, 0x20
mov byte [esi + ebx*2], cl
mov byte [esi + ebx*2 + 1], cl
inc ebx
cmp ebx, edx
jb 0x47920f
mov dword [ebp - 0x15b8], esi
lea ecx, [ebx + ebx + 1]
lea edx, [ecx - 1]
cmp edx, eax
jae 0x476333
mov eax, esi
mov byte [ecx + eax - 1], 0x20
jmp 0x476333
mov ecx, 1
jmp 0x479225
mov ebx, eax
shr ebx, 1
je 0x479275
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x479250
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x476333
mov byte [ebx + edx - 1], 0x20
jmp 0x476333
mov ebx, 1
jmp 0x479260
mov ebx, eax
shr ebx, 1
je 0x4792ae
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x479289
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x476400
mov byte [ebx + edx - 1], 0x20
jmp 0x476400
mov ebx, 1
jmp 0x479299
mov ebx, eax
shr ebx, 1
je 0x4792e7
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x4792c2
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x476400
mov byte [ebx + edx - 1], 0x20
jmp 0x476400
mov ebx, 1
jmp 0x4792d2
mov edx, eax
shr edx, 1
je 0x479328
xor ebx, ebx
mov ecx, 0x20
mov byte [esi + ebx*2], cl
mov byte [esi + ebx*2 + 1], cl
inc ebx
cmp ebx, edx
jb 0x4792fb
mov dword [ebp - 0x15b8], esi
lea ecx, [ebx + ebx + 1]
lea edx, [ecx - 1]
cmp edx, eax
jae 0x4764fe
mov eax, esi
mov byte [ecx + eax - 1], 0x20
jmp 0x4764fe
mov ecx, 1
jmp 0x479311
mov ebx, eax
shr ebx, 1
je 0x479361
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47933c
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x4764fe
mov byte [ebx + edx - 1], 0x20
jmp 0x4764fe
mov ebx, 1
jmp 0x47934c
mov ebx, eax
shr ebx, 1
je 0x47939a
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x479375
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x4765ca
mov byte [ebx + edx - 1], 0x20
jmp 0x4765ca
mov ebx, 1
jmp 0x479385
mov ebx, eax
shr ebx, 1
je 0x4793d3
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x4793ae
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x4765ca
mov byte [ebx + edx - 1], 0x20
jmp 0x4765ca
mov ebx, 1
jmp 0x4793be
mov edx, eax
shr edx, 1
je 0x479414
xor ebx, ebx
mov ecx, 0x20
mov byte [esi + ebx*2], cl
mov byte [esi + ebx*2 + 1], cl
inc ebx
cmp ebx, edx
jb 0x4793e7
mov dword [ebp - 0x15b8], esi
lea ecx, [ebx + ebx + 1]
lea edx, [ecx - 1]
cmp edx, eax
jae 0x47693e
mov eax, esi
mov byte [ecx + eax - 1], 0x20
jmp 0x47693e
mov ecx, 1
jmp 0x4793fd
mov edx, eax
shr edx, 1
je 0x479455
xor ebx, ebx
mov ecx, 0x20
mov byte [esi + ebx*2], cl
mov byte [esi + ebx*2 + 1], cl
inc ebx
cmp ebx, edx
jb 0x479428
mov dword [ebp - 0x15b8], esi
lea ecx, [ebx + ebx + 1]
lea edx, [ecx - 1]
cmp edx, eax
jae 0x47693e
mov eax, esi
mov byte [ecx + eax - 1], 0x20
jmp 0x47693e
mov ecx, 1
jmp 0x47943e
mov edx, eax
shr edx, 1
je 0x479496
xor ebx, ebx
mov ecx, 0x20
mov byte [esi + ebx*2], cl
mov byte [esi + ebx*2 + 1], cl
inc ebx
cmp ebx, edx
jb 0x479469
mov dword [ebp - 0x15b8], esi
lea ecx, [ebx + ebx + 1]
lea edx, [ecx - 1]
cmp edx, eax
jae 0x47693e
mov eax, esi
mov byte [ecx + eax - 1], 0x20
jmp 0x47693e
mov ecx, 1
jmp 0x47947f
mov ebx, eax
shr ebx, 1
je 0x4794cf
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x4794aa
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x47693e
mov byte [ebx + edx - 1], 0x20
jmp 0x47693e
mov ebx, 1
jmp 0x4794ba
mov edx, eax
shr edx, 1
je 0x479510
xor ebx, ebx
mov ecx, 0x20
mov byte [esi + ebx*2], cl
mov byte [esi + ebx*2 + 1], cl
inc ebx
cmp ebx, edx
jb 0x4794e3
mov dword [ebp - 0x15b8], esi
lea ecx, [ebx + ebx + 1]
lea edx, [ecx - 1]
cmp edx, eax
jae 0x47693e
mov eax, esi
mov byte [ecx + eax - 1], 0x20
jmp 0x47693e
mov ecx, 1
jmp 0x4794f9
mov ebx, eax
shr ebx, 1
je 0x479549
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x479524
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x47693e
mov byte [ebx + edx - 1], 0x20
jmp 0x47693e
mov ebx, 1
jmp 0x479534
mov ebx, eax
shr ebx, 1
je 0x479582
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47955d
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x47693e
mov byte [ebx + edx - 1], 0x20
jmp 0x47693e
mov ebx, 1
jmp 0x47956d
mov ebx, eax
shr ebx, 1
je 0x4795bb
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x479596
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x476a55
mov byte [ebx + edx - 1], 0x20
jmp 0x476a55
mov ebx, 1
jmp 0x4795a6
mov ebx, eax
shr ebx, 1
je 0x4795f4
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x4795cf
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x476a55
mov byte [ebx + edx - 1], 0x20
jmp 0x476a55
mov ebx, 1
jmp 0x4795df
mov ebx, eax
shr ebx, 1
je 0x47962d
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x479608
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x476a55
mov byte [ebx + edx - 1], 0x20
jmp 0x476a55
mov ebx, 1
jmp 0x479618
mov edx, eax
shr edx, 1
je 0x47966e
xor ebx, ebx
mov ecx, 0x20
mov byte [esi + ebx*2], cl
mov byte [esi + ebx*2 + 1], cl
inc ebx
cmp ebx, edx
jb 0x479641
mov dword [ebp - 0x15b8], esi
lea ecx, [ebx + ebx + 1]
lea edx, [ecx - 1]
cmp edx, eax
jae 0x476c75
mov eax, esi
mov byte [ecx + eax - 1], 0x20
jmp 0x476c75
mov ecx, 1
jmp 0x479657
mov ebx, eax
shr ebx, 1
je 0x4796a7
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x479682
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x476c75
mov byte [ebx + edx - 1], 0x20
jmp 0x476c75
mov ebx, 1
jmp 0x479692
mov ebx, eax
shr ebx, 1
je 0x4796e0
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x4796bb
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x476c75
mov byte [ebx + edx - 1], 0x20
jmp 0x476c75
mov ebx, 1
jmp 0x4796cb
mov ebx, eax
shr ebx, 1
je 0x479719
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x4796f4
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x476c75
mov byte [ebx + edx - 1], 0x20
jmp 0x476c75
mov ebx, 1
jmp 0x479704
mov ebx, eax
shr ebx, 1
je 0x479752
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47972d
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x476c75
mov byte [ebx + edx - 1], 0x20
jmp 0x476c75
mov ebx, 1
jmp 0x47973d
mov ebx, eax
shr ebx, 1
je 0x47978b
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x479766
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x476c75
mov byte [ebx + edx - 1], 0x20
jmp 0x476c75
mov ebx, 1
jmp 0x479776
mov ebx, eax
shr ebx, 1
je 0x4797c4
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47979f
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x476d4b
mov byte [ebx + edx - 1], 0x20
jmp 0x476d4b
mov ebx, 1
jmp 0x4797af
mov ebx, eax
shr ebx, 1
je 0x4797fd
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x4797d8
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x476d4b
mov byte [ebx + edx - 1], 0x20
jmp 0x476d4b
mov ebx, 1
jmp 0x4797e8
mov ebx, eax
shr ebx, 1
je 0x479836
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x479811
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x476e3b
mov byte [ebx + edx - 1], 0x20
jmp 0x476e3b
mov ebx, 1
jmp 0x479821
mov edx, dword [ebp - 0x12cc]
mov ebx, 0x500f5c
xor esi, esi
cmp esi, eax
jge 0x476e3b
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 2
jl 0x47984a
cmp esi, eax
jge 0x476e3b
neg esi
add eax, esi
cmp eax, 0x60
jg 0x476e2f
mov ebx, eax
shr ebx, 1
je 0x4798a6
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x479881
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x476e3b
mov byte [ebx + edx - 1], 0x20
jmp 0x476e3b
mov ebx, 1
jmp 0x479891
add ecx, 0xfffffffb
cmp ecx, 0xc
ja 0x4798c4
movzx eax, word [ecx*2 + 0x50172c]
add eax, 0x476e9b
jmp eax
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x543b10]
jne 0x477bd0
jmp 0x474eb4
mov ebx, eax
shr ebx, 1
je 0x479a70
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x479a4b
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x4774e9
mov byte [ebx + edx - 1], 0x20
jmp 0x4774e9
mov ebx, 1
jmp 0x479a5b
mov ebx, eax
shr ebx, 1
je 0x479aa9
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x479a84
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x4774e9
mov byte [ebx + edx - 1], 0x20
jmp 0x4774e9
mov ebx, 1
jmp 0x479a94
mov ebx, eax
shr ebx, 1
je 0x479ae2
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x479abd
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x477618
mov byte [ebx + edx - 1], 0x20
jmp 0x477618
mov ebx, 1
jmp 0x479acd
mov ebx, eax
shr ebx, 1
je 0x479b1b
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x479af6
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x477618
mov byte [ebx + edx - 1], 0x20
jmp 0x477618
mov ebx, 1
jmp 0x479b06
mov ebx, eax
shr ebx, 1
je 0x479b54
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x479b2f
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x477618
mov byte [ebx + edx - 1], 0x20
jmp 0x477618
mov ebx, 1
jmp 0x479b3f
mov ebx, eax
shr ebx, 1
je 0x479b8d
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x479b68
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x477732
mov byte [ebx + edx - 1], 0x20
jmp 0x477732
mov ebx, 1
jmp 0x479b78
mov ebx, eax
shr ebx, 1
je 0x479bc6
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x479ba1
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x477732
mov byte [ebx + edx - 1], 0x20
jmp 0x477732
mov ebx, 1
jmp 0x479bb1
mov ebx, eax
shr ebx, 1
je 0x479bff
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x479bda
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x477732
mov byte [ebx + edx - 1], 0x20
jmp 0x477732
mov ebx, 1
jmp 0x479bea
push ecx
push eax
push eax
push 0
call fcn.0047ead0
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x543b10]
jne 0x477bd0
jmp 0x474716
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
je 0x4777c1
mov eax, dword [ebp - 0x1284]
mov edx, 1
jmp 0x4777cf
mov ebx, eax
shr ebx, 1
je 0x479c80
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x479c5b
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x477732
mov byte [ebx + edx - 1], 0x20
jmp 0x477732
mov ebx, 1
jmp 0x479c6b
mov edx, dword [ebp - 0x1290]
mov ebx, str.UNKNOWN
xor esi, esi
cmp esi, eax
jge 0x477732
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 7
jl 0x479c94
cmp esi, eax
jge 0x477732
neg esi
add eax, esi
cmp eax, 0x60
jg 0x477726
mov ebx, eax
shr ebx, 1
je 0x479cf0
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x479ccb
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x477732
mov byte [ebx + edx - 1], 0x20
jmp 0x477732
mov ebx, 1
jmp 0x479cdb
mov ebx, eax
shr ebx, 1
je 0x479d29
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x479d04
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x477618
mov byte [ebx + edx - 1], 0x20
jmp 0x477618
mov ebx, 1
jmp 0x479d14
mov ebx, eax
shr ebx, 1
je 0x479d62
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x479d3d
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x4774e9
mov byte [ebx + edx - 1], 0x20
jmp 0x4774e9
mov ebx, 1
jmp 0x479d4d
mov ebx, edx
shr ebx, 1
je 0x479d9b
xor esi, esi
mov ecx, 0x20
mov byte [eax + esi*2], cl
mov byte [eax + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x479d76
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, edx
jae 0x477403
mov byte [ebx + eax - 1], 0x20
jmp 0x477403
mov ebx, 1
jmp 0x479d86
push ebx
mov eax, 0x66
push eax
push eax
push 1
call fcn.0047ead0
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x543b10]
jne 0x477bd0
jmp 0x474716
mov eax, dword [ebp - 0x12b4]
add eax, 0xfffffffb
cmp eax, 0xc
ja 0x479dee
movzx eax, word [eax*2 + 0x501748]
add eax, 0x476e9b
jmp eax
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x543b10]
jne 0x477bd0
jmp 0x474eb4
mov ebx, eax
shr ebx, 1
je 0x479e3d
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x479e18
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x476e3b
mov byte [ebx + edx - 1], 0x20
jmp 0x476e3b
mov ebx, 1
jmp 0x479e28
mov edx, dword [ebp - 0x12cc]
mov ebx, str.UNDEFINED
xor esi, esi
cmp esi, eax
jge 0x476e3b
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 9
jl 0x479e51
cmp esi, eax
jge 0x476e3b
neg esi
add eax, esi
cmp eax, 0x60
jg 0x476e2f
mov ebx, eax
shr ebx, 1
je 0x479ead
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x479e88
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x476e3b
mov byte [ebx + edx - 1], 0x20
jmp 0x476e3b
mov ebx, 1
jmp 0x479e98
mov ecx, esi
shr ecx, 1
je 0x479ee6
xor ebx, ebx
mov edx, 0x20
mov byte [eax + ebx*2], dl
mov byte [eax + ebx*2 + 1], dl
inc ebx
cmp ebx, ecx
jb 0x479ec1
lea ecx, [ebx + ebx + 1]
lea edx, [ecx - 1]
cmp edx, esi
jae 0x476da1
mov byte [eax + ecx - 1], 0x20
jmp 0x476da1
mov ecx, 1
jmp 0x479ed1
mov ebx, eax
shr ebx, 1
je 0x479f1f
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x479efa
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x476d4b
mov byte [ebx + edx - 1], 0x20
jmp 0x476d4b
mov ebx, 1
jmp 0x479f0a
mov edx, dword [ebp - 0x12e4]
mov ebx, 0x500f5c
xor esi, esi
cmp esi, eax
jge 0x476d4b
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 2
jl 0x479f33
cmp esi, eax
jge 0x476d4b
neg esi
add eax, esi
cmp eax, 0x60
jg 0x476d3f
mov ebx, eax
shr ebx, 1
je 0x479f8f
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x479f6a
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x476d4b
mov byte [ebx + edx - 1], 0x20
jmp 0x476d4b
mov ebx, 1
jmp 0x479f7a
mov ebx, eax
shr ebx, 1
je 0x479fc8
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x479fa3
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x476c75
mov byte [ebx + edx - 1], 0x20
jmp 0x476c75
mov ebx, 1
jmp 0x479fb3
test byte [ebp + 0x12], 4
jne 0x47a00e
mov edx, dword [ebp - 0x138c]
mov ebx, str.UNKNOWN
xor esi, esi
cmp esi, eax
jge 0x476c75
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 7
jl 0x479fe2
cmp esi, eax
jge 0x476c75
neg esi
add eax, esi
cmp eax, 0x60
jg 0x476c69
jmp 0x47a047
mov edx, dword [ebp - 0x138c]
mov ebx, str.UNDEFINED
xor esi, esi
cmp esi, eax
jge 0x476c75
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 9
jl 0x47a01b
cmp esi, eax
jge 0x476c75
neg esi
add eax, esi
cmp eax, 0x60
jg 0x476c69
jmp 0x47a080
mov ebx, eax
shr ebx, 1
je 0x47a079
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47a054
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x476c75
mov byte [ebx + edx - 1], 0x20
jmp 0x476c75
mov ebx, 1
jmp 0x47a064
mov ebx, eax
shr ebx, 1
je 0x47a0b2
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47a08d
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x476c75
mov byte [ebx + edx - 1], 0x20
jmp 0x476c75
mov ebx, 1
jmp 0x47a09d
mov ebx, eax
shr ebx, 1
je 0x47a0eb
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47a0c6
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x476a55
mov byte [ebx + edx - 1], 0x20
jmp 0x476a55
mov ebx, 1
jmp 0x47a0d6
test byte [ebp + 0x12], 4
jne 0x47a131
mov edx, dword [ebp - 0x13ac]
mov ebx, str.UNKNOWN
xor esi, esi
cmp esi, eax
jge 0x476a55
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 7
jl 0x47a105
cmp esi, eax
jge 0x476a55
neg esi
add eax, esi
cmp eax, 0x60
jg 0x476a49
jmp 0x47a16a
mov edx, dword [ebp - 0x13ac]
mov ebx, str.UNDEFINED
xor esi, esi
cmp esi, eax
jge 0x476a55
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 9
jl 0x47a13e
cmp esi, eax
jge 0x476a55
neg esi
add eax, esi
cmp eax, 0x60
jg 0x476a49
jmp 0x47a1a3
mov ebx, eax
shr ebx, 1
je 0x47a19c
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47a177
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x476a55
mov byte [ebx + edx - 1], 0x20
jmp 0x476a55
mov ebx, 1
jmp 0x47a187
mov ebx, eax
shr ebx, 1
je 0x47a1d5
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47a1b0
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x476a55
mov byte [ebx + edx - 1], 0x20
jmp 0x476a55
mov ebx, 1
jmp 0x47a1c0
mov ebx, eax
shr ebx, 1
je 0x47a20e
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47a1e9
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x47693e
mov byte [ebx + edx - 1], 0x20
jmp 0x47693e
mov ebx, 1
jmp 0x47a1f9
test byte [ebp + 0x12], 4
jne 0x47a254
mov edx, dword [ebp - 0x13b4]
mov ebx, str.UNKNOWN
xor esi, esi
cmp esi, eax
jge 0x47693e
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 7
jl 0x47a228
cmp esi, eax
jge 0x47693e
neg esi
add eax, esi
cmp eax, 0x60
jg 0x476932
jmp 0x47a28d
mov edx, dword [ebp - 0x13b4]
mov ebx, str.UNDEFINED
xor esi, esi
cmp esi, eax
jge 0x47693e
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 9
jl 0x47a261
cmp esi, eax
jge 0x47693e
neg esi
add eax, esi
cmp eax, 0x60
jg 0x476932
jmp 0x47a2c6
mov ebx, eax
shr ebx, 1
je 0x47a2bf
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47a29a
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x47693e
mov byte [ebx + edx - 1], 0x20
jmp 0x47693e
mov ebx, 1
jmp 0x47a2aa
mov ebx, eax
shr ebx, 1
je 0x47a2f8
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47a2d3
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x47693e
mov byte [ebx + edx - 1], 0x20
jmp 0x47693e
mov ebx, 1
jmp 0x47a2e3
xor ecx, ecx
cmp ecx, edx
sbb ecx, 0
jmp 0x47660a
mov ebx, eax
shr ebx, 1
je 0x47a33d
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47a318
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x4765ca
mov byte [ebx + edx - 1], 0x20
jmp 0x4765ca
mov ebx, 1
jmp 0x47a328
mov edx, dword [ebp - 0x1314]
mov ebx, str.UNKNOWN
xor esi, esi
cmp esi, eax
jge 0x4765ca
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 7
jl 0x47a351
cmp esi, eax
jge 0x4765ca
neg esi
add eax, esi
cmp eax, 0x60
jg 0x4765be
mov ebx, eax
shr ebx, 1
je 0x47a3ad
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47a388
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x4765ca
mov byte [ebx + edx - 1], 0x20
jmp 0x4765ca
mov ebx, 1
jmp 0x47a398
mov ebx, eax
shr ebx, 1
je 0x47a3e6
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47a3c1
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x4764fe
mov byte [ebx + edx - 1], 0x20
jmp 0x4764fe
mov ebx, 1
jmp 0x47a3d1
mov edx, dword [ebp - 0x131c]
mov ebx, str.UNKNOWN
xor esi, esi
cmp esi, eax
jge 0x4764fe
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 7
jl 0x47a3fa
cmp esi, eax
jge 0x4764fe
neg esi
add eax, esi
cmp eax, 0x60
jg 0x4764f2
mov ebx, eax
shr ebx, 1
je 0x47a456
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47a431
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x4764fe
mov byte [ebx + edx - 1], 0x20
jmp 0x4764fe
mov ebx, 1
jmp 0x47a441
mov ebx, eax
shr ebx, 1
je 0x47a48f
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47a46a
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x476400
mov byte [ebx + edx - 1], 0x20
jmp 0x476400
mov ebx, 1
jmp 0x47a47a
mov edx, dword [ebp - 0x1324]
mov ebx, str.UNKNOWN
xor esi, esi
cmp esi, eax
jge 0x476400
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 7
jl 0x47a4a3
cmp esi, eax
jge 0x476400
neg esi
add eax, esi
cmp eax, 0x60
jg 0x4763f4
mov ebx, eax
shr ebx, 1
je 0x47a4ff
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47a4da
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x476400
mov byte [ebx + edx - 1], 0x20
jmp 0x476400
mov ebx, 1
jmp 0x47a4ea
mov ebx, eax
shr ebx, 1
je 0x47a538
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47a513
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x476333
mov byte [ebx + edx - 1], 0x20
jmp 0x476333
mov ebx, 1
jmp 0x47a523
mov edx, dword [ebp - 0x132c]
mov ebx, str.UNDEFINED
xor esi, esi
cmp esi, eax
jge 0x476333
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 9
jl 0x47a54c
cmp esi, eax
jge 0x476333
neg esi
add eax, esi
cmp eax, 0x60
jg 0x476327
mov ebx, eax
shr ebx, 1
je 0x47a5a8
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47a583
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x476333
mov byte [ebx + edx - 1], 0x20
jmp 0x476333
mov ebx, 1
jmp 0x47a593
mov ebx, eax
shr ebx, 1
je 0x47a5e1
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47a5bc
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x4760d6
mov byte [ebx + edx - 1], 0x20
jmp 0x4760d6
mov ebx, 1
jmp 0x47a5cc
mov edx, dword [ebp - 0x1334]
mov ebx, 0x500f60
xor esi, esi
cmp esi, eax
jge 0x4760d6
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 3
jl 0x47a5f5
cmp esi, eax
jge 0x4760d6
neg esi
add eax, esi
cmp eax, 0x60
jg 0x4760ca
mov ebx, eax
shr ebx, 1
je 0x47a651
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47a62c
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x4760d6
mov byte [ebx + edx - 1], 0x20
jmp 0x4760d6
mov ebx, 1
jmp 0x47a63c
mov ebx, eax
shr ebx, 1
je 0x47a68a
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47a665
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x476009
mov byte [ebx + edx - 1], 0x20
jmp 0x476009
mov ebx, 1
jmp 0x47a675
mov edx, dword [ebp - 0x133c]
mov ebx, str.UNDEFINED
xor esi, esi
cmp esi, eax
jge 0x476009
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 9
jl 0x47a69e
cmp esi, eax
jge 0x476009
neg esi
add eax, esi
cmp eax, 0x60
jg 0x475ffd
mov ebx, eax
shr ebx, 1
je 0x47a6fa
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47a6d5
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x476009
mov byte [ebx + edx - 1], 0x20
jmp 0x476009
mov ebx, 1
jmp 0x47a6e5
mov ebx, eax
shr ebx, 1
je 0x47a733
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47a70e
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x475dcb
mov byte [ebx + edx - 1], 0x20
jmp 0x475dcb
mov ebx, 1
jmp 0x47a71e
mov edx, dword [ebp - 0x1344]
mov ebx, str.UNDEFINED
xor esi, esi
cmp esi, eax
jge 0x475dcb
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 9
jl 0x47a747
cmp esi, eax
jge 0x475dcb
neg esi
add eax, esi
cmp eax, 0x60
jg 0x475dbf
mov ebx, eax
shr ebx, 1
je 0x47a7a3
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47a77e
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x475dcb
mov byte [ebx + edx - 1], 0x20
jmp 0x475dcb
mov ebx, 1
jmp 0x47a78e
mov ebx, eax
shr ebx, 1
je 0x47a7dc
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47a7b7
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x475c8d
mov byte [ebx + edx - 1], 0x20
jmp 0x475c8d
mov ebx, 1
jmp 0x47a7c7
mov edx, dword [ebp - 0x134c]
mov ebx, str.UNKNOWN
xor esi, esi
cmp esi, eax
jge 0x475c8d
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 7
jl 0x47a7f0
cmp esi, eax
jge 0x475c8d
neg esi
add eax, esi
cmp eax, 0x60
jg 0x475c81
mov ebx, eax
shr ebx, 1
je 0x47a84c
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47a827
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x475c8d
mov byte [ebx + edx - 1], 0x20
jmp 0x475c8d
mov ebx, 1
jmp 0x47a837
mov ebx, eax
shr ebx, 1
je 0x47a885
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47a860
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x475b13
mov byte [ebx + edx - 1], 0x20
jmp 0x475b13
mov ebx, 1
jmp 0x47a870
mov edx, dword [ebp - 0x1354]
mov ebx, str.UNKNOWN
xor esi, esi
cmp esi, eax
jge 0x475b13
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 7
jl 0x47a899
cmp esi, eax
jge 0x475b13
neg esi
add eax, esi
cmp eax, 0x60
jg 0x475b07
mov ebx, eax
shr ebx, 1
je 0x47a8f5
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47a8d0
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x475b13
mov byte [ebx + edx - 1], 0x20
jmp 0x475b13
mov ebx, 1
jmp 0x47a8e0
mov ebx, eax
shr ebx, 1
je 0x47a92e
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47a909
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x475a46
mov byte [ebx + edx - 1], 0x20
jmp 0x475a46
mov ebx, 1
jmp 0x47a919
mov edx, dword [ebp - 0x135c]
mov ebx, str.UNKNOWN
xor esi, esi
cmp esi, eax
jge 0x475a46
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 7
jl 0x47a942
cmp esi, eax
jge 0x475a46
neg esi
add eax, esi
cmp eax, 0x60
jg 0x475a3a
mov ebx, eax
shr ebx, 1
je 0x47a99e
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47a979
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x475a46
mov byte [ebx + edx - 1], 0x20
jmp 0x475a46
mov ebx, 1
jmp 0x47a989
push eax
mov eax, 0x30
push eax
push eax
push 1
call fcn.0047ead0
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x543b10]
jne 0x477bd0
jmp 0x474716
mov eax, dword [ebp - 0x1364]
mov ebx, str.UNKNOWN
xor esi, esi
cmp esi, edx
jge 0x4758fb
movzx ecx, byte [ebx]
inc esi
mov byte [eax], cl
inc eax
inc ebx
cmp esi, 7
jl 0x47aa1a
cmp esi, edx
jge 0x4758fb
neg esi
add edx, esi
cmp edx, 0x60
jg 0x4758ef
mov ebx, edx
shr ebx, 1
je 0x47aa76
xor esi, esi
mov ecx, 0x20
mov byte [eax + esi*2], cl
mov byte [eax + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47aa51
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, edx
jae 0x4758fb
mov byte [ebx + eax - 1], 0x20
jmp 0x4758fb
mov ebx, 1
jmp 0x47aa61
xor ecx, ecx
cmp ecx, eax
sbb ecx, 0
jmp 0x4755aa
mov ebx, eax
shr ebx, 1
je 0x47aabb
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47aa96
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x475529
mov byte [ebx + edx - 1], 0x20
jmp 0x475529
mov ebx, 1
jmp 0x47aaa6
mov edx, dword [ebp - 0x136c]
mov ebx, str.SEQUENTIAL
xor esi, esi
cmp esi, eax
jge 0x475529
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 0xa
jl 0x47aacf
cmp esi, eax
jge 0x475529
neg esi
add eax, esi
cmp eax, 0x60
jg 0x47551d
mov ebx, eax
shr ebx, 1
je 0x47ab2b
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47ab06
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x475529
mov byte [ebx + edx - 1], 0x20
jmp 0x475529
mov ebx, 1
jmp 0x47ab16
mov edx, dword [ebp - 0x136c]
mov ebx, str.UNKNOWN
xor esi, esi
cmp esi, eax
jge 0x475529
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 7
jl 0x47ab3f
cmp esi, eax
jge 0x475529
neg esi
add eax, esi
cmp eax, 0x60
jg 0x47551d
mov ebx, eax
shr ebx, 1
je 0x47ab9b
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47ab76
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x475529
mov byte [ebx + edx - 1], 0x20
jmp 0x475529
mov ebx, 1
jmp 0x47ab86
movzx eax, byte [ebx + 0x1a1]
and eax, 0x18
cmp eax, 0x10
je 0x4752f1
add ecx, 0x8000
cmp ecx, 0x7f7f
jbe 0x4752f1
jmp 0x475310
test edi, edi
je 0x475310
movzx ecx, byte [ebp + 0x13]
and ecx, 0x40
shr ecx, 5
dec ecx
jmp 0x475312
test byte [ebp + 0x13], 8
jne 0x47ac39
mov eax, dword [ebp - 0x1374]
lea esi, [ebp - 0x121c]
xor ebx, ebx
test edi, edi
jle 0x47ac10
cmp ebx, ecx
jge 0x4752c7
movzx edx, byte [esi]
inc ebx
mov byte [eax], dl
inc eax
inc esi
cmp ebx, edi
jl 0x47abfc
cmp ebx, ecx
jge 0x4752c7
mov edx, ecx
sub edx, ebx
mov dword [ebp - 0x15b8], edx
cmp edx, 0x60
jle 0x47ac91
inc ebx
sub ecx, ebx
inc ecx
push ecx
push 0x20
push eax
call fcn.004ca8b0
jmp 0x4752c4
mov eax, dword [ebp - 0x1374]
xor ebx, ebx
mov dword [ebp - 0x15b8], eax
mov eax, str.UNKNOWN
mov esi, dword [ebp - 0x15b8]
cmp ebx, ecx
jge 0x4752c7
movzx edx, byte [eax]
inc ebx
mov byte [esi], dl
inc esi
inc eax
cmp ebx, 7
jl 0x47ac52
mov dword [ebp - 0x15b8], esi
cmp ebx, ecx
jge 0x4752c7
neg ebx
add ecx, ebx
cmp ecx, 0x60
jle 0x47acce
push ecx
push 0x20
push dword [ebp - 0x15b8]
call fcn.004ca8b0
jmp 0x4752c4
mov ecx, edx
shr ecx, 1
je 0x47acc7
xor ebx, ebx
mov edx, 0x20
mov byte [eax + ebx*2], dl
mov byte [eax + ebx*2 + 1], dl
inc ebx
cmp ebx, ecx
jb 0x47ac9e
lea ecx, [ebx + ebx + 1]
lea edx, [ecx - 1]
cmp edx, dword [ebp - 0x15b8]
jae 0x4752c7
mov byte [eax + ecx - 1], 0x20
jmp 0x4752c7
mov ecx, 1
jmp 0x47acae
mov eax, ecx
shr eax, 1
je 0x47ad08
xor ebx, ebx
mov edx, 0x20
mov byte [esi + ebx*2], dl
mov byte [esi + ebx*2 + 1], dl
inc ebx
cmp ebx, eax
jb 0x47acdb
mov dword [ebp - 0x15b8], esi
lea edx, [ebx + ebx + 1]
lea eax, [edx - 1]
cmp eax, ecx
jae 0x4752c7
mov eax, esi
mov byte [edx + eax - 1], 0x20
jmp 0x4752c7
mov edx, 1
jmp 0x47acf1
mov ebx, eax
shr ebx, 1
je 0x47ad41
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47ad1c
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x475223
mov byte [ebx + edx - 1], 0x20
jmp 0x475223
mov ebx, 1
jmp 0x47ad2c
mov edx, dword [ebp - 0x137c]
mov ebx, str.UNKNOWN
xor esi, esi
cmp esi, eax
jge 0x475223
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 7
jl 0x47ad55
cmp esi, eax
jge 0x475223
neg esi
add eax, esi
cmp eax, 0x60
jg 0x475217
mov ebx, eax
shr ebx, 1
je 0x47adb1
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47ad8c
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x475223
mov byte [ebx + edx - 1], 0x20
jmp 0x475223
mov ebx, 1
jmp 0x47ad9c
mov ebx, eax
shr ebx, 1
je 0x47adea
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47adc5
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x47514d
mov byte [ebx + edx - 1], 0x20
jmp 0x47514d
mov ebx, 1
jmp 0x47add5
mov edx, dword [ebp - 0x1384]
mov ebx, str.UNKNOWN
xor esi, esi
cmp esi, eax
jge 0x47514d
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 7
jl 0x47adfe
cmp esi, eax
jge 0x47514d
neg esi
add eax, esi
cmp eax, 0x60
jg 0x475141
mov ebx, eax
shr ebx, 1
je 0x47ae5a
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47ae35
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x47514d
mov byte [ebx + edx - 1], 0x20
jmp 0x47514d
mov ebx, 1
jmp 0x47ae45
mov ebx, eax
shr ebx, 1
je 0x47ae93
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47ae6e
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x475044
mov byte [ebx + edx - 1], 0x20
jmp 0x475044
mov ebx, 1
jmp 0x47ae7e
mov edx, dword [ebp - 0x1394]
mov ebx, str.UNKNOWN
xor esi, esi
cmp esi, eax
jge 0x475044
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 7
jl 0x47aea7
cmp esi, eax
jge 0x475044
neg esi
add eax, esi
cmp eax, 0x60
jg 0x475038
mov ebx, eax
shr ebx, 1
je 0x47af03
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47aede
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x475044
mov byte [ebx + edx - 1], 0x20
jmp 0x475044
mov ebx, 1
jmp 0x47aeee
mov ebx, eax
shr ebx, 1
je 0x47af3c
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47af17
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x474f77
mov byte [ebx + edx - 1], 0x20
jmp 0x474f77
mov ebx, 1
jmp 0x47af27
mov edx, dword [ebp - 0x13a4]
mov ebx, str.FORTRAN
xor esi, esi
cmp esi, eax
jge 0x474f77
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 7
jl 0x47af50
cmp esi, eax
jge 0x474f77
neg esi
add eax, esi
cmp eax, 0x60
jg 0x474f6b
mov ebx, eax
shr ebx, 1
je 0x47afac
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47af87
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x474f77
mov byte [ebx + edx - 1], 0x20
jmp 0x474f77
mov ebx, 1
jmp 0x47af97
test byte [ebp + 0x13], 8
jne 0x47aff2
mov edx, dword [ebp - 0x13a4]
mov ebx, str.UNKNOWN
xor esi, esi
cmp esi, eax
jge 0x474f77
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 7
jl 0x47afc6
cmp esi, eax
jge 0x474f77
neg esi
add eax, esi
cmp eax, 0x60
jg 0x474f6b
jmp 0x47b02b
mov edx, dword [ebp - 0x13a4]
mov ebx, str.UNDEFINED
xor esi, esi
cmp esi, eax
jge 0x474f77
movzx ecx, byte [ebx]
inc esi
mov byte [edx], cl
inc edx
inc ebx
cmp esi, 9
jl 0x47afff
cmp esi, eax
jge 0x474f77
neg esi
add eax, esi
cmp eax, 0x60
jg 0x474f6b
jmp 0x47b064
mov ebx, eax
shr ebx, 1
je 0x47b05d
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47b038
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x474f77
mov byte [ebx + edx - 1], 0x20
jmp 0x474f77
mov ebx, 1
jmp 0x47b048
mov ebx, eax
shr ebx, 1
je 0x47b096
xor esi, esi
mov ecx, 0x20
mov byte [edx + esi*2], cl
mov byte [edx + esi*2 + 1], cl
inc esi
cmp esi, ebx
jb 0x47b071
lea ebx, [esi + esi + 1]
lea ecx, [ebx - 1]
cmp ecx, eax
jae 0x474f77
mov byte [ebx + edx - 1], 0x20
jmp 0x474f77
mov ebx, 1
jmp 0x47b081
push ecx
push esi
push esi
push 0
call fcn.0047ead0
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x543b10]
jne 0x477bd0
jmp 0x474716
mov ecx, dword [ebp + 0x10]
mov dword [ebp - 0x127c], ecx
shr ecx, 0x18
movzx ecx, cl
test ecx, 0x80
je 0x47b0e8
lea ecx, [ebp + 0x1f]
and ecx, 0xfffffffc
mov ebx, dword [ecx]
jmp 0x47b0ea
xor ebx, ebx
shr ebx, 0xf
movzx ecx, byte [ebp - 0x127c]
and ebx, 1
and ecx, 1
or ecx, ebx
je 0x47b261
cmp dword [ebp - 0x12b0], 0
je 0x47b23e
lea ecx, [ebp - 0x15b8]
push ecx
push edx
call fcn.0047c800
add esp, 8
test eax, eax
jne 0x47b23e
mov ecx, dword [ebp - 0x15b8]
movzx edi, byte [ebp - 0x127c]
and edi, 1
movzx edx, byte [ecx + 0x1a4]
and edx, 0xfffffffe
or edx, edi
mov byte [ecx + 0x1a4], dl
mov ecx, dword [ebp - 0x15b8]
shl ebx, 4
movzx edx, byte [ecx + 0x1ae]
and edx, 0xffffffef
or edx, ebx
mov byte [ecx + 0x1ae], dl
mov edx, dword [ebp - 0x15b8]
mov ebx, dword [ebp - 0x12ac]
mov dword [edx + 0x114], ebx
mov ecx, dword [ebp - 0x15b8]
mov edx, dword [ebp - 0x12b0]
mov dword [ecx + 0x9c], edx
mov edx, dword [ebp - 0x15b8]
and byte [edx + 0x1ad], 0xf7
mov ecx, dword [ebp - 0x15b8]
mov edx, dword [ecx + 0x20]
test edx, edx
je 0x47b277
test byte [edx + 0x44], 2
je 0x47b1f8
mov dword [edx + 0x38], esi
mov edx, dword [ebp - 0x15b8]
mov ecx, dword [edx + 0x20]
mov dword [ecx + 0x3c], esi
mov ebx, dword [ebp - 0x15b8]
mov edx, dword [ebx + 0x7c]
test edx, edx
je 0x47b1d6
xor ecx, ecx
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x15b8]
mov dword [edx + 0x7c], ecx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x543b10]
jne 0x477bd0
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.004865b0
add esp, 0x14
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x543b10]
jne 0x477bd0
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
movzx eax, si
cmp ecx, dword [0x543b10]
jne 0x477bd0
lea esp, [ebp - 0xc]
pop ebx
pop edi
pop esi
pop ebp
ret
push str.unknown
push edx
push 2
push esi
call fcn.00480060
add esp, 0x10
jmp 0x474d95
push ecx
push esi
push esi
push 0
call fcn.0047ead0
add esp, 0x10
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], 0
xor ecx, ebp
cmp ecx, dword [0x543b10]
jne 0x477bd0
jmp 0x474716
mov ecx, dword [ecx + 0x20]
jmp 0x477992