Function at 0x473410
Capabilities:
Check if file exists
Get file attributes
Inspect section memory permissions

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x374
push ebx
mov edx, dword [ebp + 0x18]
push esi
push edi
mov ecx, 0x44
xor eax, eax
lea edi, [ebp - 0x118]
xor ebx, ebx
rep stosd dword es:[edi], eax
lea eax, [ebp - 8]
lea ecx, [ebp - 0x118]
push eax
mov eax, dword [ebp + 0x14]
push ecx
push edx
push eax
mov dword [ebp - 4], ebx
mov dword [ebp - 8], ebx
call fcn.0048f540
mov ecx, dword [ebp - 0x10c]
mov esi, dword [ebp + 0xc]
add esp, 0x10
cmp eax, ebx
mov dword [ebp + 0x14], ecx
je 0x473481
test byte [ebp + 0x10], 1
je 0x473470
pop edi
pop esi
and eax, 0xffff
pop ebx
mov esp, ebp
pop ebp
ret
push 0x4b8c34
push esi
push 2
push eax
call fcn.00482080
add esp, 0x10
cmp esi, 0xffffffff
jne 0x47374d
mov eax, dword [ebp + 0x14]
test eax, eax
je 0x473707
mov edx, dword [ebp - 0x110]
mov ecx, dword [ebp - 0x118]
xor eax, eax
mov dword [ebp - 0x128], edx
mov edx, dword [ebp - 0x114]
mov dword [ebp + 8], eax
mov dword [ebp - 0x12c], eax
mov eax, dword [ebp - 0x10c]
mov dword [ebp - 0x124], eax
mov dword [ebp - 0x120], ecx
mov dword [ebp - 0x11c], edx
mov edx, dword [ebp + 0x10]
mov ecx, 0x50
xor eax, eax
lea edi, [ebp - 0x26c]
mov esi, dword [ebp + 0x1c]
rep stosd dword es:[edi], eax
mov ecx, dword [ebp - 0x144]
mov eax, edx
and eax, 0x80
and ecx, 0xffbfffff
shl eax, 0xf
or eax, ecx
mov ecx, edx
mov dword [ebp - 0x144], eax
mov eax, dword [ebp - 0x140]
shr ecx, 0xa
and ecx, 0x100
and ah, 0xfe
or ecx, eax
mov eax, ecx
xor eax, edx
and eax, 0x8000000
xor ecx, eax
mov eax, edx
and eax, 0x80000000
neg eax
sbb eax, eax
and ecx, 0xffdfffff
shr edx, 5
and edx, 0x200000
and eax, esi
or edx, ecx
mov ecx, dword [ebp + 0x10]
and ecx, 0x8000000
mov esi, dword [ebp - 0x13c]
shl ecx, 1
and edx, 0xefffffff
and esi, 0xfffffdff
or ecx, edx
mov edx, dword [ebp + 0x10]
mov dword [ebp - 0x140], ecx
mov ecx, edx
shr ecx, 0x13
and ecx, 0x200
or ecx, esi
shr edx, 0x11
and edx, 0x400
and ch, 0xfb
or edx, ecx
mov ecx, dword [ebp + 0x10]
shr ecx, 0x12
and ecx, 0x800
and dh, 0xf7
or ecx, edx
mov edx, dword [ebp + 0x10]
shr edx, 0x10
and edx, 0x2000
and ch, 0xdf
or edx, ecx
mov ecx, eax
and ecx, 1
and edx, 0xfffbffff
shl ecx, 0x12
or ecx, edx
mov edx, eax
and edx, 2
and ch, 0x7f
shl edx, 0xe
or edx, ecx
and eax, 0xc
shl eax, 0x13
and edx, 0xff9fffff
lea ecx, [ebp - 0x12c]
or eax, edx
lea edx, [ebp + 8]
mov dword [ebp - 0x13c], eax
lea eax, [ebp - 0x374]
push edx
push eax
lea edx, [ebp - 0x26c]
xor esi, esi
push ecx
push edx
mov dword [ebp - 0x1b0], esi
call fcn.0048c3e0
add esp, 0x10
cmp eax, esi
jne 0x475365
lea edi, [ebp - 0x374]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov eax, dword [ebp - 8]
not ecx
dec ecx
cmp eax, esi
mov dword [ebp + 0x14], ecx
jne 0x4736c9
mov dword [ebp + 0xc], 0xffffffff
xor ebx, ebx
cmp dword [ebp + 0xc], esi
jl 0x47365d
push ebx
call fcn.00485c70
add esp, 4
cmp eax, esi
je 0x47365d
test byte [ebp + 0x10], 1
jne 0x473800
push 0x4b8c3c
push ebx
push 2
push eax
call fcn.00482080
add esp, 0x10
lea eax, [ebp + 0xc]
push 4
lea ecx, [ebp - 4]
push eax
push ecx
call fcn.00485e10
add esp, 0xc
cmp eax, esi
je 0x47368e
test byte [ebp + 0x10], 1
jne 0x473800
push 0x4b8c44
push ebx
push 2
push eax
call fcn.00482080
add esp, 0x10
cmp dword [ebp + 0xc], 0xffffffff
je 0x4736c4
mov eax, dword [ebp - 4]
mov cl, byte [eax + 0x128]
mov ebx, dword [eax + 0xbc]
test cl, 1
je 0x473630
mov eax, dword [eax + 0x50]
lea edx, [ebp - 0x374]
push edx
push eax
call fcn.0049f130
add esp, 8
cmp eax, esi
je 0x4736c9
jmp 0x473630
mov dword [ebp - 4], esi
jmp 0x4736d0
mov eax, dword [ebp - 4]
cmp eax, esi
jne 0x473735
lea ecx, [ebp - 0x374]
push ecx
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
jne 0x47370e
lea edx, [ebp - 0x374]
lea eax, [ebp - 0x26c]
push edx
push eax
call fcn.00472700
add esp, 8
cmp eax, 0xffffffff
je 0x473707
lea ecx, [ebp - 0x26c]
test ecx, ecx
jmp 0x473716
xor eax, eax
jmp 0x4737d7
lea edx, [ebp - 0x26c]
test edx, edx
je 0x47372d
mov eax, dword [ebp - 0x13c]
test ah, 0x40
je 0x47372d
mov eax, 1
jmp 0x4737d7
or eax, 0xffffffff
jmp 0x4737d7
mov eax, dword [eax + 0x130]
and eax, 0x4000
neg eax
sbb eax, eax
and eax, 2
dec eax
jmp 0x4737d7
mov eax, dword [ebp + 8]
push 4
lea ecx, [ebp - 4]
push eax
push ecx
push esi
call fcn.004856f0
add esp, 0x10
test eax, eax
je 0x473797
cmp eax, 0xc0000020
jne 0x47376f
xor eax, eax
jmp 0x4737b3
test byte [ebp + 0x10], 1
je 0x473781
pop edi
pop esi
and eax, 0xffff
pop ebx
mov esp, ebp
pop ebp
ret
push 0x4b8c4c
push esi
push 2
push eax
call fcn.00482080
mov eax, dword [ebp + 0x10]
add esp, 0x10
jmp 0x4737b3
mov eax, dword [ebp - 4]
test eax, eax
je 0x4737b0
mov ecx, dword [eax + 0x130]
test ch, 0x40
je 0x4737b0
mov eax, 1
jmp 0x4737b3
or eax, 0xffffffff
mov ecx, dword [ebp - 4]
test ecx, ecx
je 0x4737d7
mov edx, dword [ebp + 0x10]
mov esi, dword [ecx + 0x128]
and edx, 1
and esi, 0xfff7ffff
shl edx, 0x13
or edx, esi
mov dword [ecx + 0x128], edx
mov ecx, dword [ebp - 4]
push eax
lea eax, [ebp - 0x118]
push eax
push ecx
call fcn.0048eb80
add esp, 0xc
test eax, eax
je 0x47381d
mov ecx, dword [ebp - 4]
test ecx, ecx
jne 0x473884
test byte [ebp + 0x10], 1
je 0x47380c
pop edi
pop esi
and eax, 0xffff
pop ebx
mov esp, ebp
pop ebp
ret
push 0x4b8c54
push ebx
push 2
push eax
call fcn.00482080
add esp, 0x10
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x4739c5
mov edx, dword [ebp - 4]
test edx, edx
je 0x47396c
movsx ecx, byte [edx + 0x11e]
cmp ecx, 3
ja case.default.0x47406a
jmp dword [ecx*4 + 0x47536c]
mov edx, dword [ebp - 0xc8]
mov esi, eax
xor ecx, ecx
cmp ecx, esi
jge 0x4739c5
mov al, byte [ecx + str.FORTRAN]
mov byte [edx], al
inc edx
inc ecx
cmp ecx, 7
jl 0x473857
cmp ecx, esi
jge 0x4739c5
sub esi, ecx
mov byte [edx], 0x20
inc edx
dec esi
jne 0x473878
jmp 0x4739c5
push ecx
push eax
push eax
push 0
call fcn.004820b0
add esp, 0x10
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp - 0xc8]
mov esi, eax
xor ecx, ecx
cmp ecx, esi
jge 0x4739c5
mov al, byte [ecx + str.LIST]
mov byte [edx], al
inc edx
inc ecx
cmp ecx, 4
jl 0x4738a2
cmp ecx, esi
jge 0x4739c5
sub esi, ecx
mov byte [edx], 0x20
inc edx
dec esi
jne 0x4738c3
jmp 0x4739c5
mov edx, dword [ebp - 0xc8]
mov esi, eax
xor ecx, ecx
cmp ecx, esi
jge 0x4739c5
mov al, byte [ecx + 0x4b8c6c]
mov byte [edx], al
inc edx
inc ecx
cmp ecx, 4
jl 0x4738d9
cmp ecx, esi
jge 0x4739c5
sub esi, ecx
mov byte [edx], 0x20
inc edx
dec esi
jne 0x4738fa
jmp 0x4739c5
mov ecx, dword [edx + 0x12c]
mov edx, dword [ebp - 0xc8]
test ecx, 0x8000000
mov esi, eax
je 0x473948
xor ecx, ecx
cmp ecx, esi
jge 0x4739c5
mov al, byte [ecx + 0x4b8c74]
mov byte [edx], al
inc edx
inc ecx
cmp ecx, 9
jl 0x47391e
cmp ecx, esi
jge 0x4739c5
sub esi, ecx
mov byte [edx], 0x20
inc edx
dec esi
jne 0x47393f
jmp 0x4739c5
xor ecx, ecx
cmp ecx, esi
jge 0x4739c5
mov al, byte [ecx + 0x4b8c80]
mov byte [edx], al
inc edx
inc ecx
cmp ecx, 7
jl 0x47394a
cmp ecx, esi
jge 0x4739c5
sub esi, ecx
mov byte [edx], 0x20
inc edx
dec esi
jne 0x473963
jmp 0x4739c5
mov ecx, dword [ebp + 0x10]
mov edx, dword [ebp - 0xc8]
test ecx, 0x8000000
mov esi, eax
je 0x4739a3
xor ecx, ecx
cmp ecx, esi
jge 0x4739c5
mov al, byte [ecx + 0x4b8c88]
mov byte [edx], al
inc edx
inc ecx
cmp ecx, 9
jl 0x473981
cmp ecx, esi
jge 0x4739c5
sub esi, ecx
mov byte [edx], 0x20
inc edx
dec esi
jne 0x47399a
jmp 0x4739c5
xor ecx, ecx
cmp ecx, esi
jge 0x4739c5
mov al, byte [ecx + 0x4b8c94]
mov byte [edx], al
inc edx
inc ecx
cmp ecx, 7
jl 0x4739a5
cmp ecx, esi
jge 0x4739c5
sub esi, ecx
mov byte [edx], 0x20
inc edx
dec esi
jne 0x4739be
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x473a9c
mov ecx, dword [ebp - 4]
test ecx, ecx
je 0x473a72
mov ecx, dword [ecx + 0x128]
test ch, 0x10
je 0x473a1d
mov ecx, dword [ebp - 0xb8]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x473a9c
mov dl, byte [eax + 0x4b8c9c]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 3
jl 0x4739f3
cmp eax, esi
jge 0x473a9c
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x473a14
jmp 0x473a9c
test cl, 1
mov ecx, dword [ebp - 0xb8]
mov esi, eax
jne 0x473a4e
xor eax, eax
cmp eax, esi
jge 0x473a9c
mov dl, byte [eax + 0x4b8ca0]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 7
jl 0x473a2c
cmp eax, esi
jge 0x473a9c
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x473a45
jmp 0x473a9c
xor eax, eax
cmp eax, esi
jge 0x473a9c
mov dl, byte [eax + 0x4b8ca8]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 2
jl 0x473a50
cmp eax, esi
jge 0x473a9c
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x473a69
jmp 0x473a9c
mov ecx, dword [ebp - 0xb8]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x473a9c
mov dl, byte [eax + 0x4b8cac]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 7
jl 0x473a7c
cmp eax, esi
jge 0x473a9c
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x473a95
mov eax, dword [ebp - 0xa4]
test eax, eax
je 0x473b8a
mov edx, dword [ebp - 4]
test edx, edx
je 0x473b60
mov ecx, dword [edx + 0x128]
test ch, 1
je 0x473af7
mov ecx, dword [ebp - 0xa8]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x473b8a
mov dl, byte [eax + 0x4b8cb4]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 3
jl 0x473aca
cmp eax, esi
jge 0x473b8a
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x473aeb
jmp 0x473b8a
test ch, 2
jne 0x473b34
test dword [edx + 0x12c], 0x60000000
jne 0x473b34
mov ecx, dword [ebp - 0xa8]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x473b8a
mov dl, byte [eax + 0x4b8cbc]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 7
jl 0x473b12
cmp eax, esi
jge 0x473b8a
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x473b2b
jmp 0x473b8a
mov ecx, dword [ebp - 0xa8]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x473b8a
mov dl, byte [eax + 0x4b8cb8]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 2
jl 0x473b3e
cmp eax, esi
jge 0x473b8a
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x473b57
jmp 0x473b8a
mov ecx, dword [ebp - 0xa8]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x473b8a
mov dl, byte [eax + 0x4b8cc4]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 7
jl 0x473b6a
cmp eax, esi
jge 0x473b8a
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x473b83
mov eax, dword [ebp - 0x9c]
test eax, eax
je 0x473c74
mov ecx, dword [ebp - 4]
test ecx, ecx
je 0x473c4a
mov ecx, dword [ecx + 0x128]
test ch, 0x20
je 0x473be5
mov ecx, dword [ebp - 0xa0]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x473c74
mov dl, byte [eax + 0x4b8ccc]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 3
jl 0x473bb8
cmp eax, esi
jge 0x473c74
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x473bd9
jmp 0x473c74
test ecx, case.0x485aa7.5
jne 0x473c1e
test cl, 1
jne 0x473c1e
mov ecx, dword [ebp - 0xa0]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x473c74
mov dl, byte [eax + 0x4b8cd4]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 7
jl 0x473bfc
cmp eax, esi
jge 0x473c74
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x473c15
jmp 0x473c74
mov ecx, dword [ebp - 0xa0]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x473c74
mov dl, byte [eax + 0x4b8cd0]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 2
jl 0x473c28
cmp eax, esi
jge 0x473c74
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x473c41
jmp 0x473c74
mov ecx, dword [ebp - 0xa0]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x473c74
mov dl, byte [eax + 0x4b8cdc]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 7
jl 0x473c54
cmp eax, esi
jge 0x473c74
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x473c6d
mov ecx, dword [ebp - 0x94]
test ecx, ecx
je 0x473d9f
mov esi, dword [ebp - 4]
test esi, esi
je 0x473d3e
mov eax, dword [esi + 0x128]
test eax, case.0x485aa7.5
je 0x473cb8
mov edi, dword [ebp - 0x98]
mov edx, ecx
mov eax, 0x20202020
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
jmp 0x473d9f
mov edx, dword [esi + 0xbc]
test edx, edx
jl 0x473d05
mov edi, dword [esi + 0x50]
test edi, edi
je 0x473d05
movsx esi, word [esi + 0x11a]
mov edx, dword [ebp - 0x98]
xor eax, eax
test esi, esi
jle 0x473cef
cmp eax, ecx
jge 0x473d9f
mov bl, byte [edi]
mov byte [edx], bl
inc edx
inc edi
inc eax
cmp eax, esi
jl 0x473cdc
cmp eax, ecx
jge 0x473d9f
sub ecx, eax
mov byte [edx], 0x20
inc edx
dec ecx
jne 0x473cf9
jmp 0x473d9f
test dword [ebp + 0x10], 0x8000000
je 0x473c9a
test al, 1
jne 0x473c9a
mov edx, dword [ebp - 0x98]
mov esi, ecx
xor eax, eax
cmp eax, esi
jge 0x473d9f
mov cl, byte [eax + 0x4b8ce4]
mov byte [edx], cl
inc edx
inc eax
cmp eax, 7
jl 0x473d1c
cmp eax, esi
jge 0x473d9f
sub esi, eax
mov byte [edx], 0x20
inc edx
dec esi
jne 0x473d35
jmp 0x473d9f
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp - 0x98]
test eax, 0x8000000
mov esi, ecx
je 0x473d74
xor eax, eax
cmp eax, esi
jge 0x473d9f
mov cl, byte [eax + 0x4b8cec]
mov byte [edx], cl
inc edx
inc eax
cmp eax, 7
jl 0x473d52
cmp eax, esi
jge 0x473d9f
sub esi, eax
mov byte [edx], 0x20
inc edx
dec esi
jne 0x473d6b
jmp 0x473d9f
mov ecx, dword [ebp + 0x14]
xor eax, eax
test ecx, ecx
jle 0x473d92
mov edi, ecx
cmp eax, esi
jge 0x473d9f
mov cl, byte [ebp + eax - 0x374]
mov byte [edx], cl
inc edx
inc eax
cmp eax, edi
jl 0x473d7f
cmp eax, esi
jge 0x473d9f
sub esi, eax
mov byte [edx], 0x20
inc edx
dec esi
jne 0x473d98
mov ecx, dword [ebp - 0xfc]
test ecx, ecx
je 0x473e7c
mov edx, dword [ebp - 4]
xor eax, eax
test edx, edx
je 0x473ddd
mov esi, dword [edx + 0xbc]
test esi, esi
jl 0x473df4
mov esi, dword [edx + 0x50]
test esi, esi
je 0x473df4
test byte [edx + 0x128], 0x10
jne 0x473df4
mov eax, dword [edx + 0x130]
and eax, 0x4000
jmp 0x473dec
mov edx, dword [ebp + 0x14]
test edx, edx
je 0x473df4
mov eax, dword [ebp + 0x10]
and eax, 0x40000000
neg eax
sbb eax, eax
and eax, 2
dec eax
cmp ecx, 5
jl 0x473e63
cmp ecx, 0x11
jg 0x473e63
add ecx, 0xfffffffb
cmp ecx, 0xc
ja case.default.0x474c3d
jmp dword [ecx*4 + 0x47537c]
mov edx, dword [ebp - 0x100]
mov byte [edx], al
jmp 0x473e7c
mov ecx, dword [ebp - 0x100]
mov word [ecx], ax
jmp 0x473e7c
mov edx, dword [ebp - 0x100]
mov dword [edx], eax
jmp 0x473e7c
mov ecx, dword [ebp - 0x100]
mov byte [ecx], al
jmp 0x473e7c
mov edx, dword [ebp - 0x100]
mov word [edx], ax
jmp 0x473e7c
mov ecx, dword [ebp - 0x100]
mov dword [ecx], eax
jmp 0x473e7c
mov ecx, dword [ebp - 0x100]
cdq
mov dword [ecx], eax
mov eax, dword [ebp - 0x100]
mov dword [eax + 4], edx
jmp 0x473e7c
push 0x377
push 0x4b8cf4
push 2
push 0xc0000008
call fcn.00482080
add esp, 0x10
mov eax, dword [ebp - 0x8c]
test eax, eax
je 0x473f9c
mov edx, dword [ebp - 4]
test edx, edx
je 0x473f72
movsx ecx, byte [edx + 0x11d]
cmp ecx, 3
ja case.default.0x47406a
jmp dword [ecx*4 + 0x4753b0]
mov ecx, dword [ebp - 0x90]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x473f9c
mov dl, byte [eax + 0x4b8d14]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 0xa
jl 0x473eb6
cmp eax, esi
jge 0x473f9c
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x473ed7
jmp 0x473f9c
mov ecx, dword [ebp - 0x90]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x473f9c
mov dl, byte [eax + str.RELATIVE]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 8
jl 0x473eed
cmp eax, esi
jge 0x473f9c
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x473f0e
jmp 0x473f9c
mov ecx, dword [ebp - 0x90]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x473f9c
mov dl, byte [eax + str.INDEXED]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 7
jl 0x473f24
cmp eax, esi
jge 0x473f9c
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x473f3d
jmp 0x473f9c
mov ecx, dword [ebp - 0x90]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x473f9c
mov dl, byte [eax + 0x4b8d34]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 7
jl 0x473f50
cmp eax, esi
jge 0x473f9c
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x473f69
jmp 0x473f9c
mov ecx, dword [ebp - 0x90]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x473f9c
mov dl, byte [eax + 0x4b8d3c]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 7
jl 0x473f7c
cmp eax, esi
jge 0x473f9c
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x473f95
mov ecx, dword [ebp - 0xdc]
test ecx, ecx
je 0x474041
mov edx, dword [ebp - 4]
xor eax, eax
test edx, edx
je 0x473fb9
mov eax, dword [edx + 0xb8]
cmp ecx, 5
jl 0x474028
cmp ecx, 0x11
jg 0x474028
add ecx, 0xfffffffb
cmp ecx, 0xc
ja case.default.0x474c3d
jmp dword [ecx*4 + 0x4753c0]
mov ecx, dword [ebp - 0xe0]
mov byte [ecx], al
jmp 0x474041
mov edx, dword [ebp - 0xe0]
mov word [edx], ax
jmp 0x474041
mov ecx, dword [ebp - 0xe0]
mov dword [ecx], eax
jmp 0x474041
mov edx, dword [ebp - 0xe0]
mov byte [edx], al
jmp 0x474041
mov ecx, dword [ebp - 0xe0]
mov word [ecx], ax
jmp 0x474041
mov edx, dword [ebp - 0xe0]
mov dword [edx], eax
jmp 0x474041
mov ecx, dword [ebp - 0xe0]
cdq
mov dword [ecx], eax
mov eax, dword [ebp - 0xe0]
mov dword [eax + 4], edx
jmp 0x474041
push 0x3c5
push 0x4b8d44
push 2
push 0xc0000008
call fcn.00482080
add esp, 0x10
mov eax, dword [ebp - 0x84]
test eax, eax
je 0x474206
mov edx, dword [ebp - 4]
test edx, edx
je 0x4741dc
movsx ecx, byte [edx + 0x11c]
cmp ecx, 7
ja case.default.0x47406a
jmp dword [ecx*4 + 0x4753f4]
mov edx, dword [ebp - 0x88]
mov esi, eax
xor ecx, ecx
cmp ecx, esi
jge 0x474206
mov al, byte [ecx + str.FIXED]
mov byte [edx], al
inc edx
inc ecx
cmp ecx, 5
jl 0x47407b
cmp ecx, esi
jge 0x474206
sub esi, ecx
mov byte [edx], 0x20
inc edx
dec esi
jne 0x47409c
jmp 0x474206
mov edx, dword [ebp - 0x88]
mov esi, eax
xor ecx, ecx
cmp ecx, esi
jge 0x474206
mov al, byte [ecx + str.STREAM]
mov byte [edx], al
inc edx
inc ecx
cmp ecx, 6
jl 0x4740b2
cmp ecx, esi
jge 0x474206
sub esi, ecx
mov byte [edx], 0x20
inc edx
dec esi
jne 0x4740d3
jmp 0x474206
mov edx, dword [ebp - 0x88]
mov esi, eax
xor ecx, ecx
cmp ecx, esi
jge 0x474206
mov al, byte [ecx + str.STREAM_LF]
mov byte [edx], al
inc edx
inc ecx
cmp ecx, 9
jl 0x4740e9
cmp ecx, esi
jge 0x474206
sub esi, ecx
mov byte [edx], 0x20
inc edx
dec esi
jne 0x47410a
jmp 0x474206
mov edx, dword [ebp - 0x88]
mov esi, eax
xor ecx, ecx
cmp ecx, esi
jge 0x474206
mov al, byte [ecx + str.STREAM_CR]
mov byte [edx], al
inc edx
inc ecx
cmp ecx, 9
jl 0x474120
cmp ecx, esi
jge 0x474206
sub esi, ecx
mov byte [edx], 0x20
inc edx
dec esi
jne 0x474141
jmp 0x474206
mov edx, dword [ebp - 0x88]
mov esi, eax
xor ecx, ecx
cmp ecx, esi
jge 0x474206
mov al, byte [ecx + str.VARIABLE]
mov byte [edx], al
inc edx
inc ecx
cmp ecx, 8
jl 0x474157
cmp ecx, esi
jge 0x474206
sub esi, ecx
mov byte [edx], 0x20
inc edx
dec esi
jne 0x474178
jmp 0x474206
mov edx, dword [ebp - 0x88]
mov esi, eax
xor ecx, ecx
cmp ecx, esi
jge 0x474206
mov al, byte [ecx + str.SEGMENTED]
mov byte [edx], al
inc edx
inc ecx
cmp ecx, 9
jl 0x47418e
cmp ecx, esi
jge 0x474206
sub esi, ecx
mov byte [edx], 0x20
inc edx
dec esi
jne 0x4741a7
jmp 0x474206
mov edx, dword [ebp - 0x88]
mov esi, eax
xor ecx, ecx
cmp ecx, esi
jge 0x474206
mov al, byte [ecx + 0x4b8da4]
mov byte [edx], al
inc edx
inc ecx
cmp ecx, 7
jl 0x4741ba
cmp ecx, esi
jge 0x474206
sub esi, ecx
mov byte [edx], 0x20
inc edx
dec esi
jne 0x4741d3
jmp 0x474206
mov edx, dword [ebp - 0x88]
mov esi, eax
xor ecx, ecx
cmp ecx, esi
jge 0x474206
mov al, byte [ecx + 0x4b8dac]
mov byte [edx], al
inc edx
inc ecx
cmp ecx, 7
jl 0x4741e6
cmp ecx, esi
jge 0x474206
sub esi, ecx
mov byte [edx], 0x20
inc edx
dec esi
jne 0x4741ff
mov eax, dword [ebp - 0x7c]
test eax, eax
je 0x474323
mov edx, dword [ebp - 4]
test edx, edx
je 0x4742fc
mov ecx, dword [edx + 0x128]
test cl, 1
jne 0x47425b
mov ecx, dword [ebp - 0x80]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x474323
mov dl, byte [eax + 0x4b8db4]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 7
jl 0x47422e
cmp eax, esi
jge 0x474323
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x47424f
jmp 0x474323
test ch, 8
je 0x474294
mov ecx, dword [ebp - 0x80]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x474323
mov dl, byte [eax + 0x4b8dbc]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 3
jl 0x474267
cmp eax, esi
jge 0x474323
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x474288
jmp 0x474323
test dword [edx + 0x12c], 0x8000000
je 0x4742d3
test ch, 0x10
je 0x4742d3
test ch, 1
je 0x4742d3
mov ecx, dword [ebp - 0x80]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x474323
mov dl, byte [eax + 0x4b8dc0]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 3
jl 0x4742b1
cmp eax, esi
jge 0x474323
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x4742ca
jmp 0x474323
mov ecx, dword [ebp - 0x80]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x474323
mov dl, byte [eax + 0x4b8dc4]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 2
jl 0x4742da
cmp eax, esi
jge 0x474323
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x4742f3
jmp 0x474323
mov ecx, dword [ebp - 0x80]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x474323
mov dl, byte [eax + 0x4b8dc8]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 7
jl 0x474303
cmp eax, esi
jge 0x474323
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x47431c
mov eax, dword [ebp - 0x74]
test eax, eax
je 0x474448
mov ecx, dword [ebp - 4]
test ecx, ecx
je 0x474421
mov edx, dword [ecx + 0x128]
test dh, 1
jne 0x4743f8
mov ecx, dword [ecx + 0x12c]
test ecx, 0x40000000
jne 0x4743f8
test dh, 2
jne 0x4743cf
test ecx, 0x20000000
jne 0x4743cf
test ecx, 0x8000000
mov ecx, dword [ebp - 0x78]
mov esi, eax
je 0x4743a3
xor eax, eax
cmp eax, esi
jge 0x474448
mov dl, byte [eax + 0x4b8dd8]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 2
jl 0x474376
cmp eax, esi
jge 0x474448
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x474397
jmp 0x474448
xor eax, eax
cmp eax, esi
jge 0x474448
mov dl, byte [eax + 0x4b8ddc]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 7
jl 0x4743a5
cmp eax, esi
jge 0x474448
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x4743c6
jmp 0x474448
mov ecx, dword [ebp - 0x78]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x474448
mov dl, byte [eax + 0x4b8dd4]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 3
jl 0x4743d6
cmp eax, esi
jge 0x474448
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x4743ef
jmp 0x474448
mov ecx, dword [ebp - 0x78]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x474448
mov dl, byte [eax + 0x4b8dd0]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 2
jl 0x4743ff
cmp eax, esi
jge 0x474448
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x474418
jmp 0x474448
mov ecx, dword [ebp - 0x78]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x474448
mov dl, byte [eax + 0x4b8de4]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 7
jl 0x474428
cmp eax, esi
jge 0x474448
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x474441
mov eax, dword [ebp - 0x6c]
mov bl, 0x40
test eax, eax
je 0x474553
mov edx, dword [ebp - 4]
test edx, edx
je 0x47452c
mov ecx, dword [edx + 0x128]
test cl, 1
jne 0x47449f
mov ecx, dword [ebp - 0x70]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x474553
mov dl, byte [eax + 0x4b8dec]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 9
jl 0x474472
cmp eax, esi
jge 0x474553
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x474493
jmp 0x474553
test cl, 2
je 0x4744d5
mov ecx, dword [ebp - 0x70]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x474553
mov dl, byte [eax + 0x4b8df8]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 4
jl 0x4744ab
cmp eax, esi
jge 0x474553
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x4744cc
jmp 0x474553
mov cl, byte [edx + 0x12c]
mov esi, eax
test bl, cl
mov ecx, dword [ebp - 0x70]
je 0x474508
xor eax, eax
cmp eax, esi
jge 0x474553
mov dl, byte [eax + 0x4b8e00]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 5
jl 0x4744e6
cmp eax, esi
jge 0x474553
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x4744ff
jmp 0x474553
xor eax, eax
cmp eax, esi
jge 0x474553
mov dl, byte [eax + 0x4b8e08]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 9
jl 0x47450a
cmp eax, esi
jge 0x474553
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x474523
jmp 0x474553
mov ecx, dword [ebp - 0x70]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x474553
mov dl, byte [eax + 0x4b8e14]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 9
jl 0x474533
cmp eax, esi
jge 0x474553
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x47454c
mov eax, dword [ebp - 0x64]
test eax, eax
je 0x4746bf
mov edx, dword [ebp - 4]
test edx, edx
je 0x474698
mov ecx, dword [edx + 0x128]
test cl, 1
jne 0x4745a8
mov ecx, dword [ebp - 0x68]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x4746bf
mov dl, byte [eax + 0x4b8e20]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 9
jl 0x47457b
cmp eax, esi
jge 0x4746bf
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x47459c
jmp 0x4746bf
test ch, 1
jne 0x4745e1
mov ecx, dword [ebp - 0x68]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x4746bf
mov dl, byte [eax + 0x4b8e2c]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 9
jl 0x4745b4
cmp eax, esi
jge 0x4746bf
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x4745d5
jmp 0x4746bf
mov cl, byte [edx + 0x121]
test cl, cl
je 0x47466f
cmp cl, 0x22
je 0x474646
cmp cl, 0x27
je 0x474615
push edx
push 0xc0000030
push 0xc0000030
push 1
call fcn.004820b0
add esp, 0x10
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 0x68]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x4746bf
mov dl, byte [eax + str.APOSTROPHE]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 0xa
jl 0x47461c
cmp eax, esi
jge 0x4746bf
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x47463d
jmp 0x4746bf
mov ecx, dword [ebp - 0x68]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x4746bf
mov dl, byte [eax + str.QUOTE]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 5
jl 0x47464d
cmp eax, esi
jge 0x4746bf
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x474666
jmp 0x4746bf
mov ecx, dword [ebp - 0x68]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x4746bf
mov dl, byte [eax + str.NONE]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 4
jl 0x474676
cmp eax, esi
jge 0x4746bf
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x47468f
jmp 0x4746bf
mov ecx, dword [ebp - 0x68]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x4746bf
mov dl, byte [eax + 0x4b8e54]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 9
jl 0x47469f
cmp eax, esi
jge 0x4746bf
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x4746b8
mov eax, dword [ebp - 0x5c]
test eax, eax
je 0x47478e
mov ecx, dword [ebp - 4]
test ecx, ecx
je 0x474767
test byte [ecx + 0x128], 1
jne 0x47470f
mov ecx, dword [ebp - 0x60]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x47478e
mov dl, byte [eax + 0x4b8e60]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 3
jl 0x4746e5
cmp eax, esi
jge 0x47478e
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x474706
jmp 0x47478e
mov dl, byte [ecx + 0x12c]
mov ecx, dword [ebp - 0x60]
test dl, 0x80
mov esi, eax
jne 0x474743
xor eax, eax
cmp eax, esi
jge 0x47478e
mov dl, byte [eax + 0x4b8e64]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 2
jl 0x474721
cmp eax, esi
jge 0x47478e
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x47473a
jmp 0x47478e
xor eax, eax
cmp eax, esi
jge 0x47478e
mov dl, byte [eax + 0x4b8e68]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 3
jl 0x474745
cmp eax, esi
jge 0x47478e
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x47475e
jmp 0x47478e
mov ecx, dword [ebp - 0x60]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x47478e
mov dl, byte [eax + 0x4b8e6c]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 3
jl 0x47476e
cmp eax, esi
jge 0x47478e
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x474787
mov eax, dword [ebp - 0x54]
test eax, eax
je 0x474979
mov edx, dword [ebp - 4]
test edx, edx
je 0x474952
mov ecx, dword [edx + 0x128]
test cl, 1
jne 0x4747e3
mov ecx, dword [ebp - 0x58]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x474979
mov dl, byte [eax + 0x4b8e70]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 9
jl 0x4747b6
cmp eax, esi
jge 0x474979
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x4747d7
jmp 0x474979
test ch, 8
jne 0x474861
test ch, 0x10
je 0x47482d
test dword [edx + 0x130], 0x100000
je 0x47482d
mov ecx, dword [ebp - 0x58]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x474979
mov dl, byte [eax + 0x4b8e7c]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 6
jl 0x474800
cmp eax, esi
jge 0x474979
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x474821
jmp 0x474979
mov ecx, dword [ebp - 0x58]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x474979
mov dl, byte [eax + 0x4b8e84]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 9
jl 0x474834
cmp eax, esi
jge 0x474979
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x474855
jmp 0x474979
test dword [edx + 0x12c], 0x80000
je 0x4748a1
mov ecx, dword [ebp - 0x58]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x474979
mov dl, byte [eax + str.ASIS]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 4
jl 0x474874
cmp eax, esi
jge 0x474979
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x474895
jmp 0x474979
mov ecx, dword [edx + 0x90]
mov edx, dword [edx + 0x94]
cmp ecx, 0x80000000
jne 0x4748ba
cmp edx, 0xffffffff
je 0x474929
test edx, edx
jl 0x474900
jg 0x4748c4
test ecx, ecx
jb 0x474900
test edx, edx
jg 0x474900
jl 0x4748cf
cmp ecx, 1
ja 0x474900
mov ecx, dword [ebp - 0x58]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x474979
mov dl, byte [eax + str.REWIND]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 6
jl 0x4748d6
cmp eax, esi
jge 0x474979
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x4748f7
jmp 0x474979
mov ecx, dword [ebp - 0x58]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x474979
mov dl, byte [eax + 0x4b8ea8]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 9
jl 0x474907
cmp eax, esi
jge 0x474979
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x474920
jmp 0x474979
mov ecx, dword [ebp - 0x58]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x474979
mov dl, byte [eax + str.APPEND]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 6
jl 0x474930
cmp eax, esi
jge 0x474979
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x474949
jmp 0x474979
mov ecx, dword [ebp - 0x58]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x474979
mov dl, byte [eax + 0x4b8eb4]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 9
jl 0x474959
cmp eax, esi
jge 0x474979
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x474972
mov eax, dword [ebp - 0x4c]
test eax, eax
je 0x474a47
mov ecx, dword [ebp - 4]
test ecx, ecx
je 0x474a20
test byte [ecx + 0x128], 1
jne 0x4749c9
mov ecx, dword [ebp - 0x50]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x474a47
mov dl, byte [eax + 0x4b8ec0]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 7
jl 0x47499f
cmp eax, esi
jge 0x474a47
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x4749c0
jmp 0x474a47
mov dl, byte [ecx + 0x12c]
mov ecx, dword [ebp - 0x50]
test bl, dl
mov esi, eax
jne 0x4749fc
xor eax, eax
cmp eax, esi
jge 0x474a47
mov dl, byte [eax + 0x4b8ec8]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 3
jl 0x4749da
cmp eax, esi
jge 0x474a47
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x4749f3
jmp 0x474a47
xor eax, eax
cmp eax, esi
jge 0x474a47
mov dl, byte [eax + 0x4b8ecc]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 2
jl 0x4749fe
cmp eax, esi
jge 0x474a47
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x474a17
jmp 0x474a47
mov ecx, dword [ebp - 0x50]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x474a47
mov dl, byte [eax + 0x4b8ed0]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 7
jl 0x474a27
cmp eax, esi
jge 0x474a47
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x474a40
mov eax, dword [ebp - 0x44]
test eax, eax
je 0x474b22
mov edx, dword [ebp - 4]
test edx, edx
je 0x474afb
mov ecx, dword [edx + 0x128]
test cl, 1
jne 0x474a9c
mov ecx, dword [ebp - 0x48]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x474b22
mov dl, byte [eax + 0x4b8ed8]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 7
jl 0x474a6f
cmp eax, esi
jge 0x474b22
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x474a90
jmp 0x474b22
test byte [edx + 0x12c], bl
jne 0x474ad2
test cl, 2
jne 0x474ad2
mov ecx, dword [ebp - 0x48]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x474b22
mov dl, byte [eax + 0x4b8ee0]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 3
jl 0x474ab0
cmp eax, esi
jge 0x474b22
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x474ac9
jmp 0x474b22
mov ecx, dword [ebp - 0x48]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x474b22
mov dl, byte [eax + 0x4b8ee4]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 2
jl 0x474ad9
cmp eax, esi
jge 0x474b22
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x474af2
jmp 0x474b22
mov ecx, dword [ebp - 0x48]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x474b22
mov dl, byte [eax + 0x4b8ee8]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 7
jl 0x474b02
cmp eax, esi
jge 0x474b22
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x474b1b
mov eax, dword [ebp - 0x3c]
test eax, eax
je 0x474bed
mov ecx, dword [ebp - 4]
test ecx, ecx
je 0x474bc6
mov ecx, dword [ecx + 0x128]
test cl, 1
jne 0x474b74
mov ecx, dword [ebp - 0x40]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x474bed
mov dl, byte [eax + 0x4b8ef0]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 7
jl 0x474b4a
cmp eax, esi
jge 0x474bed
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x474b6b
jmp 0x474bed
test cl, 2
mov ecx, dword [ebp - 0x40]
mov esi, eax
jne 0x474ba2
xor eax, eax
cmp eax, esi
jge 0x474bed
mov dl, byte [eax + 0x4b8ef8]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 3
jl 0x474b80
cmp eax, esi
jge 0x474bed
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x474b99
jmp 0x474bed
xor eax, eax
cmp eax, esi
jge 0x474bed
mov dl, byte [eax + 0x4b8efc]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 2
jl 0x474ba4
cmp eax, esi
jge 0x474bed
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x474bbd
jmp 0x474bed
mov ecx, dword [ebp - 0x40]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x474bed
mov dl, byte [eax + 0x4b8f00]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 7
jl 0x474bcd
cmp eax, esi
jge 0x474bed
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x474be6
mov ecx, dword [ebp - 0xec]
mov edi, 0x40000
test ecx, ecx
je 0x474cbb
mov eax, dword [ebp - 4]
test eax, eax
je 0x474c22
test dword [ebp + 0x10], edi
je 0x474c1a
test byte [eax + 0x128], 1
jne 0x474c1a
or eax, 0xffffffff
jmp 0x474c2b
mov eax, dword [eax + 0xbc]
jmp 0x474c2b
mov eax, dword [ebp + 0x10]
and eax, edi
neg eax
sbb eax, eax
cmp ecx, 5
jl 0x474ca2
cmp ecx, 0x11
jg 0x474ca2
add ecx, 0xfffffffb
cmp ecx, 0xc
ja case.default.0x474c3d
jmp dword [ecx*4 + 0x475414]
mov ecx, dword [ebp - 0xf0]
mov byte [ecx], al
jmp 0x474cbb
mov edx, dword [ebp - 0xf0]
mov word [edx], ax
jmp 0x474cbb
mov ecx, dword [ebp - 0xf0]
mov dword [ecx], eax
jmp 0x474cbb
mov edx, dword [ebp - 0xf0]
mov byte [edx], al
jmp 0x474cbb
mov ecx, dword [ebp - 0xf0]
mov word [ecx], ax
jmp 0x474cbb
mov edx, dword [ebp - 0xf0]
mov dword [edx], eax
jmp 0x474cbb
mov ecx, dword [ebp - 0xf0]
cdq
mov dword [ecx], eax
mov eax, dword [ebp - 0xf0]
mov dword [eax + 4], edx
jmp 0x474cbb
pop edi
pop esi
mov eax, 0xc0000030
pop ebx
mov esp, ebp
pop ebp
ret
push 0x5cb
push str.E:_forrtl_build_for_inquire.c
push 2
push 0xc0000008
call fcn.00482080
add esp, 0x10
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x474ebc
mov edx, dword [ebp - 4]
test edx, edx
je 0x474e67
mov ecx, dword [edx + 0x128]
test cl, 1
je 0x474e08
test ch, 8
je 0x474d1f
mov edx, dword [ebp - 0xd8]
mov esi, eax
xor ecx, ecx
cmp ecx, esi
jge 0x474ebc
mov al, byte [ecx + str.SEQUENTIAL]
mov byte [edx], al
inc edx
inc ecx
cmp ecx, 0xa
jl 0x474cf2
cmp ecx, esi
jge 0x474ebc
sub esi, ecx
mov byte [edx], 0x20
inc edx
dec esi
jne 0x474d13
jmp 0x474ebc
test ch, 0x10
je 0x474d5b
mov edx, dword [ebp - 0xd8]
mov esi, eax
xor ecx, ecx
cmp ecx, esi
jge 0x474ebc
mov al, byte [ecx + str.DIRECT]
mov byte [edx], al
inc edx
inc ecx
cmp ecx, 6
jl 0x474d2e
cmp ecx, esi
jge 0x474ebc
sub esi, ecx
mov byte [edx], 0x20
inc edx
dec esi
jne 0x474d4f
jmp 0x474ebc
test ch, 0x20
je 0x474d97
mov edx, dword [ebp - 0xd8]
mov esi, eax
xor ecx, ecx
cmp ecx, esi
jge 0x474ebc
mov al, byte [ecx + str.KEYED]
mov byte [edx], al
inc edx
inc ecx
cmp ecx, 5
jl 0x474d6a
cmp ecx, esi
jge 0x474ebc
sub esi, ecx
mov byte [edx], 0x20
inc edx
dec esi
jne 0x474d8b
jmp 0x474ebc
mov ecx, dword [edx + 0x12c]
mov edx, dword [ebp - 0xd8]
test ch, 1
mov esi, eax
je 0x474dd9
xor ecx, ecx
cmp ecx, esi
jge 0x474ebc
mov al, byte [ecx + 0x4b8f44]
mov byte [edx], al
inc edx
inc ecx
cmp ecx, 9
jl 0x474dac
cmp ecx, esi
jge 0x474ebc
sub esi, ecx
mov byte [edx], 0x20
inc edx
dec esi
jne 0x474dcd
jmp 0x474ebc
xor ecx, ecx
cmp ecx, esi
jge 0x474ebc
mov al, byte [ecx + 0x4b8f50]
mov byte [edx], al
inc edx
inc ecx
cmp ecx, 7
jl 0x474ddb
cmp ecx, esi
jge 0x474ebc
sub esi, ecx
mov byte [edx], 0x20
inc edx
dec esi
jne 0x474dfc
jmp 0x474ebc
mov ecx, dword [ebp + 0x10]
mov edx, dword [ebp - 0xd8]
test edi, ecx
mov esi, eax
je 0x474e43
xor ecx, ecx
cmp ecx, esi
jge 0x474ebc
mov al, byte [ecx + 0x4b8f58]
mov byte [edx], al
inc edx
inc ecx
cmp ecx, 9
jl 0x474e19
cmp ecx, esi
jge 0x474ebc
sub esi, ecx
mov byte [edx], 0x20
inc edx
dec esi
jne 0x474e3a
jmp 0x474ebc
xor ecx, ecx
cmp ecx, esi
jge 0x474ebc
mov al, byte [ecx + 0x4b8f64]
mov byte [edx], al
inc edx
inc ecx
cmp ecx, 7
jl 0x474e45
cmp ecx, esi
jge 0x474ebc
sub esi, ecx
mov byte [edx], 0x20
inc edx
dec esi
jne 0x474e5e
jmp 0x474ebc
mov ecx, dword [ebp + 0x10]
mov edx, dword [ebp - 0xd8]
test edi, ecx
mov esi, eax
je 0x474e9a
xor ecx, ecx
cmp ecx, esi
jge 0x474ebc
mov al, byte [ecx + 0x4b8f6c]
mov byte [edx], al
inc edx
inc ecx
cmp ecx, 9
jl 0x474e78
cmp ecx, esi
jge 0x474ebc
sub esi, ecx
mov byte [edx], 0x20
inc edx
dec esi
jne 0x474e91
jmp 0x474ebc
xor ecx, ecx
cmp ecx, esi
jge 0x474ebc
mov al, byte [ecx + 0x4b8f78]
mov byte [edx], al
inc edx
inc ecx
cmp ecx, 7
jl 0x474e9c
cmp ecx, esi
jge 0x474ebc
sub esi, ecx
mov byte [edx], 0x20
inc edx
dec esi
jne 0x474eb5
mov eax, dword [ebp - 0xcc]
test eax, eax
je 0x474fff
mov ecx, dword [ebp - 4]
test ecx, ecx
je 0x474faa
mov ecx, dword [ecx + 0x128]
test ch, 1
je 0x474f4b
test ch, 0x40
mov ecx, dword [ebp - 0xd0]
mov esi, eax
je 0x474f1c
xor eax, eax
cmp eax, esi
jge 0x474fff
mov dl, byte [eax + str.NULL]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 4
jl 0x474eef
cmp eax, esi
jge 0x474fff
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x474f10
jmp 0x474fff
xor eax, eax
cmp eax, esi
jge 0x474fff
mov dl, byte [eax + str.ZERO]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 4
jl 0x474f1e
cmp eax, esi
jge 0x474fff
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x474f3f
jmp 0x474fff
mov ecx, dword [ebp + 0x10]
mov esi, eax
test edi, ecx
mov ecx, dword [ebp - 0xd0]
je 0x474f86
xor eax, eax
cmp eax, esi
jge 0x474fff
mov dl, byte [eax + 0x4b8f90]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 9
jl 0x474f5c
cmp eax, esi
jge 0x474fff
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x474f7d
jmp 0x474fff
xor eax, eax
cmp eax, esi
jge 0x474fff
mov dl, byte [eax + 0x4b8f9c]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 7
jl 0x474f88
cmp eax, esi
jge 0x474fff
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x474fa1
jmp 0x474fff
mov ecx, dword [ebp + 0x10]
mov esi, eax
test edi, ecx
mov ecx, dword [ebp - 0xd0]
je 0x474fdd
xor eax, eax
cmp eax, esi
jge 0x474fff
mov dl, byte [eax + 0x4b8fa4]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 9
jl 0x474fbb
cmp eax, esi
jge 0x474fff
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x474fd4
jmp 0x474fff
xor eax, eax
cmp eax, esi
jge 0x474fff
mov dl, byte [eax + 0x4b8fb0]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 7
jl 0x474fdf
cmp eax, esi
jge 0x474fff
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x474ff8
mov eax, dword [ebp - 0xac]
test eax, eax
je 0x47520b
mov ecx, dword [ebp - 4]
test ecx, ecx
je 0x4751b6
mov edx, dword [ecx + 0x128]
test dl, 1
je 0x475157
test dh, 1
je 0x475063
mov edx, dword [ebp - 0xb0]
mov esi, eax
xor ecx, ecx
cmp ecx, esi
jge 0x47520b
mov al, byte [ecx + str.FORMATTED]
mov byte [edx], al
inc edx
inc ecx
cmp ecx, 9
jl 0x475036
cmp ecx, esi
jge 0x47520b
sub esi, ecx
mov byte [edx], 0x20
inc edx
dec esi
jne 0x475057
jmp 0x47520b
mov ecx, dword [ecx + 0x12c]
test ecx, 0x40000000
je 0x4750a8
mov edx, dword [ebp - 0xb0]
mov esi, eax
xor ecx, ecx
cmp ecx, esi
jge 0x47520b
mov al, byte [ecx + str.BINARY]
mov byte [edx], al
inc edx
inc ecx
cmp ecx, 6
jl 0x47507b
cmp ecx, esi
jge 0x47520b
sub esi, ecx
mov byte [edx], 0x20
inc edx
dec esi
jne 0x47509c
jmp 0x47520b
test dh, 2
jne 0x475120
test ecx, 0x20000000
jne 0x475120
mov edx, dword [ebp - 0xb0]
mov esi, eax
test ch, 1
je 0x4750f1
xor ecx, ecx
cmp ecx, esi
jge 0x47520b
mov al, byte [ecx + 0x4b8fd8]
mov byte [edx], al
inc edx
inc ecx
cmp ecx, 9
jl 0x4750c4
cmp ecx, esi
jge 0x47520b
sub esi, ecx
mov byte [edx], 0x20
inc edx
dec esi
jne 0x4750e5
jmp 0x47520b
xor ecx, ecx
cmp ecx, esi
jge 0x47520b
mov al, byte [ecx + 0x4b8fe4]
mov byte [edx], al
inc edx
inc ecx
cmp ecx, 7
jl 0x4750f3
cmp ecx, esi
jge 0x47520b
sub esi, ecx
mov byte [edx], 0x20
inc edx
dec esi
jne 0x475114
jmp 0x47520b
mov edx, dword [ebp - 0xb0]
mov esi, eax
xor ecx, ecx
cmp ecx, esi
jge 0x47520b
mov al, byte [ecx + str.UNFORMATTED]
mov byte [edx], al
inc edx
inc ecx
cmp ecx, 0xb
jl 0x47512a
cmp ecx, esi
jge 0x47520b
sub esi, ecx
mov byte [edx], 0x20
inc edx
dec esi
jne 0x47514b
jmp 0x47520b
mov ecx, dword [ebp + 0x10]
mov edx, dword [ebp - 0xb0]
test edi, ecx
mov esi, eax
je 0x475192
xor ecx, ecx
cmp ecx, esi
jge 0x47520b
mov al, byte [ecx + 0x4b8fec]
mov byte [edx], al
inc edx
inc ecx
cmp ecx, 9
jl 0x475168
cmp ecx, esi
jge 0x47520b
sub esi, ecx
mov byte [edx], 0x20
inc edx
dec esi
jne 0x475189
jmp 0x47520b
xor ecx, ecx
cmp ecx, esi
jge 0x47520b
mov al, byte [ecx + 0x4b8ff8]
mov byte [edx], al
inc edx
inc ecx
cmp ecx, 7
jl 0x475194
cmp ecx, esi
jge 0x47520b
sub esi, ecx
mov byte [edx], 0x20
inc edx
dec esi
jne 0x4751ad
jmp 0x47520b
mov ecx, dword [ebp + 0x10]
mov edx, dword [ebp - 0xb0]
test edi, ecx
mov esi, eax
je 0x4751e9
xor ecx, ecx
cmp ecx, esi
jge 0x47520b
mov al, byte [ecx + str.UNDEFINED]
mov byte [edx], al
inc edx
inc ecx
cmp ecx, 9
jl 0x4751c7
cmp ecx, esi
jge 0x47520b
sub esi, ecx
mov byte [edx], 0x20
inc edx
dec esi
jne 0x4751e0
jmp 0x47520b
xor ecx, ecx
cmp ecx, esi
jge 0x47520b
mov al, byte [ecx + 0x4b900c]
mov byte [edx], al
inc edx
inc ecx
cmp ecx, 7
jl 0x4751eb
cmp ecx, esi
jge 0x47520b
sub esi, ecx
mov byte [edx], 0x20
inc edx
dec esi
jne 0x475204
mov eax, dword [ebp - 0xc]
test eax, eax
je 0x4752e0
mov ecx, dword [ebp - 4]
test ecx, ecx
je 0x4752b9
test byte [ecx + 0x128], 1
jne 0x47525e
mov ecx, dword [ebp - 0x10]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x4752e0
mov dl, byte [eax + 0x4b9014]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 7
jl 0x475231
cmp eax, esi
jge 0x4752e0
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x475252
jmp 0x4752e0
mov edx, dword [ecx + 0x130]
mov ecx, dword [ebp - 0x10]
test edx, 0x10000
mov esi, eax
jne 0x475295
xor eax, eax
cmp eax, esi
jge 0x4752e0
mov dl, byte [eax + 0x4b901c]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 2
jl 0x475273
cmp eax, esi
jge 0x4752e0
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x47528c
jmp 0x4752e0
xor eax, eax
cmp eax, esi
jge 0x4752e0
mov dl, byte [eax + 0x4b9020]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 3
jl 0x475297
cmp eax, esi
jge 0x4752e0
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x4752b0
jmp 0x4752e0
mov ecx, dword [ebp - 0x10]
mov esi, eax
xor eax, eax
cmp eax, esi
jge 0x4752e0
mov dl, byte [eax + 0x4b9024]
mov byte [ecx], dl
inc ecx
inc eax
cmp eax, 2
jl 0x4752c0
cmp eax, esi
jge 0x4752e0
sub esi, eax
mov byte [ecx], 0x20
inc ecx
dec esi
jne 0x4752d9
mov eax, dword [ebp - 4]
test eax, eax
je 0x475363
mov esi, dword [eax + 0x128]
mov edx, eax
add eax, 0x128
and esi, 0xfff7ffff
mov dword [eax], esi
mov ecx, dword [eax]
and ecx, 0xffefffff
mov dword [eax], ecx
and ecx, 0xffdfffff
mov dword [eax], ecx
and ecx, 0xfdffffff
mov dword [eax], ecx
and ecx, 0xfffeffff
mov dword [eax], ecx
mov ebx, dword [edx + 0x12c]
lea eax, [edx + 0x12c]
and ebx, 0xffffffdf
mov ecx, ebx
and ch, 0xfd
mov dword [eax], ebx
mov dword [eax], ecx
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0xbc]
push ecx
call fcn.00485c70
add esp, 4
test eax, eax
je 0x475363
mov edx, dword [ebp - 4]
push edx
push eax
push eax
push 0
call fcn.004820b0
add esp, 0x10
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret