Function at 0x401000
Capabilities:
Read file on windows
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x104
mov eax, dword [0x44a2f4]
xor eax, ebp
mov dword [ebp - 4], eax
mov dword [ebp - 0xe4], 0
mov dword [ebp - 0xf0], 0
mov eax, dword [ebp + 0xc]
push eax
push 0xc8
lea ecx, [ebp - 0xcc]
push ecx
call fcn.004018e0
add esp, 0xc
test eax, eax
je 0x401228
lea edx, [ebp - 0xcc]
push edx
call fcn.0041dfc0
add esp, 4
test eax, eax
jne 0x40105f
jmp 0x401228
push 0x2e
lea eax, [ebp - 0xcc]
push eax
call fcn.00402cd0
add esp, 8
mov dword [ebp - 0xe0], eax
cmp dword [ebp - 0xe0], 0
je 0x401138
mov ecx, dword [ebp - 0xe0]
mov dword [ebp - 0xe8], ecx
mov edx, dword [ebp - 0xe8]
movsx eax, byte [edx]
test eax, eax
je 0x4010dd
mov ecx, dword [ebp - 0xe8]
movsx edx, byte [ecx]
push edx
call fcn.0041d366
add esp, 4
test eax, eax
je 0x4010cc
mov eax, dword [ebp - 0xe8]
movsx ecx, byte [eax]
push ecx
call fcn.0041d7f6
add esp, 4
mov edx, dword [ebp - 0xe8]
mov byte [edx], al
mov eax, dword [ebp - 0xe8]
add eax, 1
mov dword [ebp - 0xe8], eax
jmp 0x40108f
push str..SLD
mov ecx, dword [ebp - 0xe0]
push ecx
call fcn.0041df30
add esp, 8
test eax, eax
je 0x40112f
lea edx, [ebp - 0xcc]
push edx
push str.Incorrect_file_type_on__s.__Must_be_.sld
push 0xff
push 0x44ac98
call fcn.00401d20
add esp, 0x10
push 0x44ac98
call fcn.004019b0
add esp, 4
mov eax, dword [ebp - 0xe4]
add eax, 1
mov dword [ebp - 0xe4], eax
mov ecx, dword [ebp - 0xe0]
mov byte [ecx], 0
push pe_nt_image_headers32
call fcn.004017e0
add esp, 4
mov dword [ebp - 0xec], eax
mov edx, dword [ebp - 0xec]
mov eax, dword [0x44ac68]
mov dword [edx], eax
mov ecx, dword [ebp - 0xec]
mov dword [0x44ac68], ecx
lea edx, [ebp - 0xcc]
push edx
push 0x102
mov eax, dword [ebp - 0xec]
add eax, 4
push eax
call fcn.0041dd3c
add esp, 0xc
push 0x44a14c
push 0xc8
lea ecx, [ebp - 0xcc]
push ecx
call fcn.0041ddff
add esp, 0xc
mov dword [ebp - 0xd4], 0
push 0x44a154
lea edx, [ebp - 0xcc]
push edx
lea eax, [ebp - 0xd4]
push eax
call fcn.0040a0fd
add esp, 0xc
cmp dword [ebp - 0xd4], 0
jne 0x401205
lea ecx, [ebp - 0xcc]
push ecx
push str.Cannot_open_file__s
push 0xff
push 0x44ac98
call fcn.00401d20
add esp, 0x10
push 0x44ac98
call fcn.004019b0
add esp, 4
mov edx, dword [ebp - 0xe4]
add edx, 1
mov dword [ebp - 0xe4], edx
jmp 0x401214
mov eax, dword [ebp - 0xd4]
push eax
call fcn.0040a1e4
add esp, 4
mov ecx, dword [ebp - 0xf0]
add ecx, 1
mov dword [ebp - 0xf0], ecx
jmp 0x401027
cmp dword [ebp - 0xe4], 0
je 0x40128a
cmp dword [ebp - 0xe4], 1
jle 0x401246
mov dword [ebp - 0xfc], 0x44a16c
jmp 0x401250
mov dword [ebp - 0xfc], 0x44ac6c
mov edx, dword [ebp - 0xfc]
push edx
mov eax, dword [ebp - 0xe4]
push eax
push str._n_d_error_s_encountered.__No_output_file_created.
push 0xff
push 0x44ac98
call fcn.00401d20
add esp, 0x14
push 0x44ac98
call fcn.004019b0
add esp, 4
or eax, 0xffffffff
jmp 0x4017c5
mov dword [ebp - 0xd0], 0
push 0x44a1a4
mov ecx, dword [ebp + 8]
push ecx
lea edx, [ebp - 0xd0]
push edx
call fcn.0040a0fd
add esp, 0xc
cmp dword [ebp - 0xd0], 0
jne 0x4012e5
mov eax, dword [ebp + 8]
push eax
push str.Cannot_open_library_file__s
push 0xff
push 0x44ac98
call fcn.00401d20
add esp, 0x10
push 0x44ac98
call fcn.004019b0
add esp, 4
or eax, 0xffffffff
jmp 0x4017c5
mov dword [ebp - 0xdc], 0
jmp 0x401300
mov ecx, dword [ebp - 0xdc]
add ecx, 1
mov dword [ebp - 0xdc], ecx
cmp dword [ebp - 0xdc], 0x20
jge 0x401338
mov edx, dword [ebp - 0xdc]
mov dword [ebp - 0x100], edx
cmp dword [ebp - 0x100], 0xc8
jae 0x401323
jmp 0x401328
call fcn.00401e7a
mov eax, dword [ebp - 0x100]
mov byte [ebp + eax - 0xcc], 0
jmp 0x4012f1
push str.AutoCAD_Slide_Library_1.0_r_n
push 0xc8
lea ecx, [ebp - 0xcc]
push ecx
call fcn.0041dd3c
add esp, 0xc
mov edx, dword [ebp - 0xd0]
push edx
push 1
push 0x20
lea eax, [ebp - 0xcc]
push eax
call fcn.0040b352
add esp, 0x10
mov dword [ebp - 0xdc], 0
jmp 0x401386
mov ecx, dword [ebp - 0xdc]
add ecx, 1
mov dword [ebp - 0xdc], ecx
cmp dword [ebp - 0xdc], 0x20
jge 0x40139e
mov edx, dword [ebp - 0xdc]
mov byte [edx + 0x44ac70], 0
jmp 0x401377
mov dword [ebp - 0xdc], 0
jmp 0x4013b9
mov eax, dword [ebp - 0xdc]
add eax, 1
mov dword [ebp - 0xdc], eax
cmp dword [ebp - 0xdc], 4
jge 0x4013d1
mov ecx, dword [ebp - 0xdc]
mov byte [ecx + 0x44ac90], 0
jmp 0x4013aa
mov dword [ebp - 0xdc], 0
jmp 0x4013ec
mov edx, dword [ebp - 0xdc]
add edx, 1
mov dword [ebp - 0xdc], edx
mov eax, dword [ebp - 0xdc]
cmp eax, dword [ebp - 0xf0]
jg 0x401414
mov ecx, dword [ebp - 0xd0]
push ecx
push 1
push 0x24
push 0x44ac70
call fcn.0040b352
add esp, 0x10
jmp 0x4013dd
push 1
push 0
mov edx, dword [ebp - 0xd0]
push edx
call fcn.0040a945
add esp, 0xc
mov eax, dword [ebp - 0xd0]
push eax
call fcn.0040b08a
add esp, 4
mov dword [ebp - 0xf8], eax
push 0x1000
call fcn.004017e0
add esp, 4
mov dword [ebp - 0x104], eax
mov dword [ebp - 0xdc], 0
jmp 0x40146a
mov ecx, dword [ebp - 0xdc]
add ecx, 1
mov dword [ebp - 0xdc], ecx
mov edx, dword [ebp - 0xdc]
cmp edx, dword [ebp - 0xf0]
jge 0x4017b4
push 0
imul eax, dword [ebp - 0xdc], 0x24
add eax, 0x20
push eax
mov ecx, dword [ebp - 0xd0]
push ecx
call fcn.0040a945
add esp, 0xc
mov dword [ebp - 0xd8], 0
jmp 0x4014b3
mov edx, dword [ebp - 0xd8]
add edx, 1
mov dword [ebp - 0xd8], edx
cmp dword [ebp - 0xd8], 0x20
jge 0x4014cb
mov eax, dword [ebp - 0xd8]
mov byte [eax + 0x44ac70], 0
jmp 0x4014a4
mov ecx, dword [0x44ac68]
add ecx, 4
push ecx
call fcn.0041dfc0
add esp, 4
sub eax, 1
mov dword [ebp - 0xd8], eax
mov edx, dword [ebp - 0xd8]
mov eax, dword [0x44ac68]
lea ecx, [eax + edx + 4]
mov dword [ebp - 0xe0], ecx
cmp dword [ebp - 0xd8], 0
jle 0x40155f
mov edx, dword [ebp - 0xe0]
movsx eax, byte [edx]
cmp eax, 0x2f
je 0x40152e
mov ecx, dword [ebp - 0xe0]
movsx edx, byte [ecx]
cmp edx, 0x5c
je 0x40152e
mov eax, dword [ebp - 0xe0]
movsx ecx, byte [eax]
cmp ecx, 0x3a
jne 0x40153f
mov edx, dword [ebp - 0xe0]
add edx, 1
mov dword [ebp - 0xe0], edx
jmp 0x40155f
mov eax, dword [ebp - 0xe0]
sub eax, 1
mov dword [ebp - 0xe0], eax
mov ecx, dword [ebp - 0xd8]
sub ecx, 1
mov dword [ebp - 0xd8], ecx
jmp 0x4014fb
push 0x20
mov edx, dword [ebp - 0xe0]
push edx
push 0x20
push 0x44ac70
call fcn.0041df19
add esp, 0x10
mov eax, 1
imul ecx, eax, 0x1f
mov byte [ecx + 0x44ac70], 0
mov dword [ebp - 0xd8], 0
jmp 0x4015a1
mov edx, dword [ebp - 0xd8]
add edx, 1
mov dword [ebp - 0xd8], edx
mov eax, dword [ebp - 0xd8]
movsx ecx, byte [eax + 0x44ac70]
test ecx, ecx
je 0x4015f0
mov edx, dword [ebp - 0xd8]
movsx eax, byte [edx + 0x44ac70]
push eax
call fcn.0041d366
add esp, 4
test eax, eax
je 0x4015ee
mov ecx, dword [ebp - 0xd8]
movsx edx, byte [ecx + 0x44ac70]
push edx
call fcn.0041d7f6
add esp, 4
mov ecx, dword [ebp - 0xd8]
mov byte [ecx + 0x44ac70], al
jmp 0x401592
mov edx, dword [ebp - 0xf8]
mov dword [ebp - 0xf4], edx
mov dword [ebp - 0xd8], 0
jmp 0x401617
mov eax, dword [ebp - 0xd8]
add eax, 1
mov dword [ebp - 0xd8], eax
cmp dword [ebp - 0xd8], 4
jge 0x401649
mov ecx, dword [ebp - 0xf4]
and ecx, 0xff
mov edx, dword [ebp - 0xd8]
mov byte [edx + 0x44ac90], cl
mov eax, dword [ebp - 0xf4]
sar eax, 8
mov dword [ebp - 0xf4], eax
jmp 0x401608
mov ecx, dword [ebp - 0xd0]
push ecx
push 1
push 0x24
push 0x44ac70
call fcn.0040b352
add esp, 0x10
push 0
mov edx, dword [ebp - 0xf8]
push edx
mov eax, dword [ebp - 0xd0]
push eax
call fcn.0040a945
add esp, 0xc
push str..sld
push 0x102
mov ecx, dword [0x44ac68]
add ecx, 4
push ecx
call fcn.0041ddff
add esp, 0xc
mov dword [ebp - 0xd4], 0
push 0x44a1ec
mov edx, dword [0x44ac68]
add edx, 4
push edx
lea eax, [ebp - 0xd4]
push eax
call fcn.0040a0fd
add esp, 0xc
cmp dword [ebp - 0xd4], 0
jne 0x40170b
mov ecx, dword [0x44ac68]
add ecx, 4
push ecx
push str.Cannot_reopen_file__s
push 0xff
push 0x44ac98
call fcn.00401d20
add esp, 0x10
push 0x44ac98
call fcn.004019b0
add esp, 4
mov edx, dword [ebp - 0xd0]
push edx
call fcn.0040a1e4
add esp, 4
or eax, 0xffffffff
jmp 0x4017c5
mov eax, 1
test eax, eax
je 0x401763
mov ecx, dword [ebp - 0xd4]
push ecx
push 0x1000
push 1
mov edx, dword [ebp - 0x104]
push edx
call fcn.0040a4c0
add esp, 0x10
mov dword [ebp - 0xd8], eax
cmp dword [ebp - 0xd8], 0
jg 0x401742
jmp 0x401763
mov eax, dword [ebp - 0xd0]
push eax
mov ecx, dword [ebp - 0xd8]
push ecx
push 1
mov edx, dword [ebp - 0x104]
push edx
call fcn.0040b352
add esp, 0x10
jmp 0x40170b
mov eax, dword [ebp - 0xd4]
push eax
call fcn.0040a1e4
add esp, 4
mov ecx, dword [ebp - 0xd0]
push ecx
call fcn.0040b08a
add esp, 4
mov dword [ebp - 0xf8], eax
mov edx, dword [0x44ac68]
mov dword [ebp - 0xec], edx
mov eax, dword [0x44ac68]
mov ecx, dword [eax]
mov dword [0x44ac68], ecx
mov edx, dword [ebp - 0xec]
push edx
call fcn.0041d826
add esp, 4
jmp 0x40145b
mov eax, dword [ebp - 0xd0]
push eax
call fcn.0040a1e4
add esp, 4
xor eax, eax
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0040206c
mov esp, ebp
pop ebp
ret