Function at 0x44669d
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x64
push ebx
push esi
push edi
mov dword [ebp - 0x24], ecx
push ecx
lea ecx, [ebp - 0x64]
call fcn.0042e48d
lea eax, [ebp + 8]
push eax
call fcn.00427312
pop ecx
lea ecx, [ebp - 0x50]
call fcn.0042c809
lea ecx, [ebp - 0x28]
call fcn.0042c809
lea ecx, [ebp - 0x4c]
call fcn.0042c809
lea ecx, [ebp - 0x14]
call fcn.0042c809
mov eax, dword [ebp + 8]
push 1
mov dword [ebp - 0x1c], eax
push 0x2c
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0x64]
call fcn.00440941
xor ebx, ebx
push ebx
lea ecx, [ebp - 0x50]
push ecx
push eax
call fcn.0042ec20
mov esi, dword [ebp - 0x50]
xor eax, eax
mov ax, word [esi]
add esp, 0xc
xor edi, edi
cmp ax, bx
mov byte [ebp - 2], bl
mov byte [ebp - 5], bl
mov ecx, esi
je 0x446737
call fcn.00402a89
test al, al
je 0x446724
mov edi, ecx
inc ecx
inc ecx
mov ax, word [ecx]
cmp ax, bx
jne 0x446719
cmp edi, ebx
je 0x446737
mov word [edi], bx
inc edi
inc edi
cmp edi, ebx
mov eax, esi
mov dword [ebp + 8], eax
je 0x44679a
cmp word [esi], 0x2a
jne 0x44679a
cmp word [eax + 2], 0x2d
je 0x44679a
push 6
lea eax, [ebp + 8]
push eax
push str.nobom
call fcn.0042e2da
add esp, 0xc
test al, al
je 0x44676a
mov byte [ebp - 5], 1
jmp 0x446791
push 0xa
lea eax, [ebp + 8]
push eax
push str.transonly
call fcn.0042e2da
add esp, 0xc
test al, al
je 0x446787
mov byte [ebp - 2], 1
jmp 0x446791
lea eax, [ebp + 8]
push eax
call fcn.00403cc8
pop ecx
mov eax, dword [ebp + 8]
cmp word [eax], 0x2a
je 0x446746
cmp edi, ebx
mov byte [ebp - 4], 0
mov byte [ebp - 7], 0
mov byte [ebp - 6], 0
mov byte [ebp + 0xb], 0
mov byte [ebp - 8], 0
mov byte [ebp - 3], 0
je 0x4467d2
push edi
lea ecx, [ebp - 0x48]
call fcn.004365ba
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x48], esi
mov esi, eax
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x50], esi
call fcn.00427365
mov ecx, dword [ebp - 0x1c]
cmp word [ecx], 0x2c
lea eax, [ecx + 2]
mov dword [ebp - 0x58], eax
jne 0x446802
push 1
mov dword [ebp - 0x1c], eax
push 0x2c
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0x64]
call fcn.00440941
push ebx
lea ecx, [ebp - 0x28]
push ecx
push eax
call fcn.0042ecdc
add esp, 0xc
mov eax, dword [ebp - 0x1c]
cmp word [eax], 0x2c
jne 0x44682d
add dword [ebp - 0x1c], 2
push 1
push 0x2c
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0x64]
call fcn.00440941
push ebx
lea ecx, [ebp - 0x4c]
push ecx
push eax
call fcn.0042ec20
add esp, 0xc
mov eax, dword [ebp - 0x1c]
cmp word [eax], 0x2c
jne 0x446858
add dword [ebp - 0x1c], 2
push 1
push 0x2c
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0x64]
call fcn.00440941
push ebx
lea ecx, [ebp - 0x14]
push ecx
push eax
call fcn.0042ec20
add esp, 0xc
mov ax, word [esi]
cmp ax, bx
je 0x446f76
mov ecx, dword [ebp - 0x28]
cmp word [ecx], bx
je 0x446f76
mov ecx, dword [ebp - 0x4c]
cmp word [ecx], bx
je 0x446f76
mov edx, dword [ebp - 0x14]
cmp word [edx], bx
je 0x446f76
xor edi, edi
cmp ax, 0x2a
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x2c], edi
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x34], edi
mov dword [ebp - 0x48], edi
mov dword [ebp - 0x44], edi
mov dword [ebp - 0x3c], edi
mov dword [ebp - 0x30], edi
mov ebx, ecx
mov byte [ebp - 1], 0
jne 0x4468cf
cmp word [esi + 2], ax
jne 0x4468bf
mov byte [ebp - 4], al
mov byte [ebp - 6], al
add esi, 4
jmp 0x4468d2
cmp ax, 0x2a
jne 0x4468cf
mov al, byte [esi]
mov byte [ebp - 4], al
add esi, 2
jmp 0x4468d2
mov al, byte [ebp - 7]
cmp word [esi], 0x2d
jne 0x4468dc
mov al, byte [esi]
inc esi
inc esi
test al, al
jne 0x4468ea
mov esi, 0x80070057
jmp 0x446f79
push esi
push 0x4875d8
call fcn.00428293
test al, al
pop ecx
pop ecx
je 0x446904
mov byte [ebp - 1], 1
jmp 0x446a17
push esi
push str.ANSI
call fcn.00428293
test al, al
pop ecx
pop ecx
je 0x44691d
mov dword [ebp - 0x20], edi
jmp 0x446a17
push esi
push 0x4875d4
call fcn.00428293
test al, al
pop ecx
pop ecx
je 0x44693a
mov dword [ebp - 0x20], 0x3a8
jmp 0x446a17
push esi
push str.BIG5
call fcn.00428293
test al, al
pop ecx
pop ecx
je 0x446957
mov dword [ebp - 0x20], 0x3b6
jmp 0x446a17
push esi
push str.UTF8
call fcn.00428293
test al, al
pop ecx
pop ecx
je 0x446974
mov dword [ebp - 0x20], 0xfde9
jmp 0x446a17
push esi
push str.UTF7
call fcn.00428293
test al, al
pop ecx
pop ecx
je 0x446991
mov dword [ebp - 0x20], 0xfde8
jmp 0x446a17
push esi
push str.UNICODE
call fcn.00428293
test al, al
pop ecx
pop ecx
je 0x4469ab
mov dword [ebp - 0x18], 0x4b0
jmp 0x446a17
push esi
push 0x48140c
call fcn.00428293
test al, al
pop ecx
pop ecx
jne 0x4469a2
push esi
push str.UNICODEB
call fcn.00428293
test al, al
pop ecx
pop ecx
je 0x4469d6
mov dword [ebp - 0x18], 0x4b1
jmp 0x446a17
push esi
push str.UNIB
call fcn.00428293
test al, al
pop ecx
pop ecx
jne 0x4469cd
xor ecx, ecx
mov cx, word [esi]
push ecx
call fcn.0040efef
add esp, 4
test al, al
je 0x446a05
push esi
call fcn.0042d1ed
pop ecx
mov dword [ebp - 0x20], eax
jmp 0x446a17
cmp cx, di
jne 0x4468e0
xor eax, eax
inc eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x48], eax
mov edx, dword [ebp - 0x4c]
mov ax, word [edx]
cmp ax, 0x2a
jne 0x446a48
cmp word [edx + 2], ax
jne 0x446a36
mov byte [ebp + 0xb], al
mov cl, al
mov byte [ebp - 3], al
lea ebx, [edx + 4]
jmp 0x446a4b
cmp ax, 0x2a
jne 0x446a48
mov al, byte [edx]
mov byte [ebp + 0xb], al
mov cl, al
lea ebx, [edx + 2]
jmp 0x446a4b
mov cl, byte [ebp - 8]
cmp word [ebx], 0x2d
jne 0x446a55
mov cl, byte [ebx]
inc ebx
inc ebx
test cl, cl
je 0x4468e0
push ebx
push str.ANSI
call fcn.00428293
test al, al
pop ecx
pop ecx
mov esi, 0x4848e0
mov edi, 0x4848e4
je 0x446a81
and dword [ebp - 0x2c], 0
jmp 0x446b96
push ebx
push 0x4875d4
call fcn.00428293
test al, al
pop ecx
pop ecx
je 0x446a9e
mov dword [ebp - 0x2c], 0x3a8
jmp 0x446b96
push ebx
push str.BIG5
call fcn.00428293
test al, al
pop ecx
pop ecx
je 0x446abb
mov dword [ebp - 0x2c], 0x3b6
jmp 0x446b96
push ebx
push str.UTF8
call fcn.00428293
test al, al
pop ecx
pop ecx
je 0x446ae6
mov dword [ebp - 0x2c], 0xfde9
mov dword [ebp - 0x30], 0x4848e8
mov dword [ebp - 0x3c], 3
jmp 0x446b96
push ebx
push str.UTF7
call fcn.00428293
test al, al
pop ecx
pop ecx
je 0x446b03
mov dword [ebp - 0x2c], 0xfde8
jmp 0x446b96
push ebx
push str.UNICODE
call fcn.00428293
test al, al
pop ecx
pop ecx
je 0x446b27
mov dword [ebp - 0x34], 0x4b0
mov dword [ebp - 0x30], esi
mov dword [ebp - 0x3c], 2
jmp 0x446b96
push ebx
push 0x48140c
call fcn.00428293
test al, al
pop ecx
pop ecx
jne 0x446b14
push ebx
push str.UNICODEB
call fcn.00428293
test al, al
pop ecx
pop ecx
jne 0x446b5a
push ebx
push str.UNIB
call fcn.00428293
test al, al
pop ecx
pop ecx
je 0x446b66
mov dword [ebp - 0x34], 0x4b1
mov dword [ebp - 0x30], edi
jmp 0x446b1e
xor ecx, ecx
mov cx, word [ebx]
push ecx
call fcn.0040efef
add esp, 4
test al, al
je 0x446b84
push ebx
call fcn.0042d1ed
pop ecx
mov dword [ebp - 0x2c], eax
jmp 0x446b96
test cx, cx
jne 0x4468e0
xor eax, eax
inc eax
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x44], eax
xor esi, esi
cmp byte [ebp - 5], 0
je 0x446ba1
mov dword [ebp - 0x30], esi
lea ecx, [ebp - 0xc]
mov dword [ebp - 0x10], esi
call fcn.0042c693
xor edi, edi
cmp byte [ebp - 4], 0
mov byte [ebp - 5], 0
jne 0x446d3c
mov eax, dword [ebp - 0x58]
push 1
mov dword [ebp - 0x1c], eax
push 0x2c
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0x64]
mov dword [ebp - 0x40], esi
call fcn.00440941
push esi
lea ecx, [ebp - 0x28]
push ecx
push eax
call fcn.0042ec20
push dword [ebp - 0x28]
call fcn.0040d003
add esp, 0x10
push esi
push 0x80
push 3
push esi
push 7
push 0x80000000
push eax
lea ecx, [ebp - 0x40]
call fcn.00403ce4
mov edi, dword [ebp - 0x40]
cmp edi, esi
jne 0x446c18
lea ecx, [ebp - 0x40]
call fcn.00402a26
jmp 0x446f66
push 2
xor esi, esi
push esi
push esi
push edi
call fcn.004281cd
push 1
push esi
push esi
push edi
call fcn.004281cd
push esi
push esi
push esi
push edi
mov ebx, eax
call fcn.004281cd
add esp, 0x30
lea eax, [ebx + 0xa]
push eax
lea ecx, [ebp - 0xc]
call fcn.0042c6d7
mov esi, dword [ebp - 0xc]
push 0
lea eax, [ebp - 0x54]
push eax
push ebx
mov byte [esi + 2], 0
mov byte [esi + 1], 0
push esi
mov byte [esi], 0
or dword [ebp - 0x54], 0xffffffff
push edi
call dword [sym.imp.KERNEL32.dll_ReadFile]
mov eax, dword [ebp - 0x54]
test eax, eax
mov edi, eax
jl 0x446c0b
and dword [ebp - 0x38], 0
add eax, esi
cmp byte [ebp - 1], 0
mov byte [eax + 2], 0
mov byte [eax + 1], 0
mov byte [eax], 0
jne 0x446c92
cmp dword [ebp - 0x18], 0x4b0
jne 0x446cbc
push 2
push 0x4848e0
push esi
call fcn.004273ac
add esp, 0xc
test eax, eax
jne 0x446cb6
mov dword [ebp - 0x18], 0x4b0
mov dword [ebp - 0x38], 2
jmp 0x446d13
cmp byte [ebp - 1], 0
jne 0x446cc5
cmp dword [ebp - 0x18], 0x4b1
jne 0x446ce8
push 2
push 0x4848e4
push esi
call fcn.004273ac
add esp, 0xc
test eax, eax
jne 0x446ce2
mov dword [ebp - 0x18], 0x4b1
jmp 0x446cad
cmp byte [ebp - 1], 0
jne 0x446cf1
cmp dword [ebp - 0x20], 0xfde9
jne 0x446d28
push 3
push 0x4848e8
push esi
call fcn.004273ac
add esp, 0xc
test eax, eax
jne 0x446d28
mov dword [ebp - 0x20], 0xfde9
mov dword [ebp - 0x38], 3
mov eax, dword [ebp - 0x38]
sub ebx, eax
add ebx, 3
push ebx
add eax, esi
push eax
push esi
call fcn.0046cf30
add esp, 0xc
sub edi, dword [ebp - 0x38]
jns 0x446d2f
xor edi, edi
lea ecx, [ebp - 0x40]
call fcn.00402a26
jmp 0x446de9
cmp byte [ebp - 6], 0
je 0x446da5
mov ecx, dword [ebp - 0x24]
xor ebx, ebx
push ebx
lea eax, [ebp - 0x28]
push eax
call fcn.00402b15
mov ecx, dword [ebp - 0x24]
push 0xffffffffffffffff
push ebx
push dword [ebp - 0x28]
call fcn.0040b0e9
mov esi, eax
cmp esi, ebx
lea ecx, [ebp - 0xc]
je 0x446d8a
mov edi, dword [esi + 0xc]
lea eax, [edi + 8]
push eax
call fcn.0042c6d7
push edi
push dword [esi + 4]
mov esi, dword [ebp - 0xc]
push esi
call fcn.0046cbf0
add esp, 0xc
mov byte [ebp - 5], 1
jmp 0x446d94
push 8
call fcn.0042c6d7
mov esi, dword [ebp - 0xc]
push 8
lea eax, [edi + esi]
push ebx
push eax
call fcn.0046c9b0
add esp, 0xc
jmp 0x446de9
cmp dword [ebp - 0x48], esi
je 0x446dd2
push 0xffffffffffffffff
push dword [ebp - 0x28]
lea ecx, [ebp - 0xc]
call fcn.0042c92f
push dword [ebp - 0x28]
call dword [sym.imp.KERNEL32.dll_lstrlenW]
mov edi, eax
shl edi, 1
lea eax, [edi + 8]
push eax
lea ecx, [ebp - 0xc]
call fcn.0042c6d7
jmp 0x446de2
push dword [ebp - 0x28]
lea eax, [ebp - 0xc]
push eax
call fcn.0042fe19
pop ecx
pop ecx
mov edi, eax
mov esi, dword [ebp - 0xc]
mov byte [ebp - 5], 2
test edi, edi
jl 0x446f66
cmp byte [ebp - 1], 0
je 0x446e74
cmp byte [ebp - 5], 0
je 0x446e74
push 2
push 0x4848e0
push esi
xor ebx, ebx
call fcn.004273ac
add esp, 0xc
test eax, eax
push 2
jne 0x446e1e
mov dword [ebp - 0x18], 0x4b0
jmp 0x446e58
push 0x4848e4
push esi
call fcn.004273ac
add esp, 0xc
test eax, eax
jne 0x446e3b
mov dword [ebp - 0x18], 0x4b1
push 2
jmp 0x446e58
push 3
push 0x4848e8
push esi
call fcn.004273ac
add esp, 0xc
test eax, eax
jne 0x446e6e
mov dword [ebp - 0x20], 0xfde9
push 3
pop ebx
mov eax, edi
sub eax, ebx
add eax, 4
push eax
lea eax, [ebx + esi]
push eax
push esi
call fcn.0046cf30
add esp, 0xc
sub edi, ebx
jns 0x446e74
xor edi, edi
lea ecx, [ebp - 0x1c]
mov dword [ebp - 0x38], esi
mov dword [ebp - 0x58], esi
call fcn.0042c809
mov ebx, dword [ebp - 0x2c]
cmp ebx, dword [ebp - 0x20]
jne 0x446f12
mov eax, dword [ebp - 0x34]
cmp eax, dword [ebp - 0x18]
jne 0x446f12
cmp byte [ebp - 3], 0
je 0x446eb4
push 0
lea eax, [ebp - 0x14]
push eax
push edi
push esi
push dword [ebp - 0x14]
push dword [ebp - 0x24]
call fcn.0043ac43
add esp, 0x18
jmp 0x446ef6
cmp byte [ebp + 0xb], 0
jne 0x446ec6
push edi
push esi
lea ecx, [ebp - 0x10]
call fcn.00427285
jmp 0x446ef6
cmp dword [ebp - 0x44], 0
jne 0x446edf
push edi
lea eax, [ebp - 0x1c]
push esi
push eax
call fcn.0042fd92
add esp, 0xc
push dword [ebp - 0x1c]
jmp 0x446eeb
cmp dword [ebp - 0x48], 0
je 0x446eea
push dword [ebp - 0x28]
jmp 0x446eeb
push esi
push dword [ebp - 0x14]
mov ecx, dword [ebp - 0x24]
call fcn.0042b2cd
lea ecx, [ebp - 0x1c]
call fcn.00427365
lea ecx, [ebp - 0xc]
call fcn.00427365
lea ecx, [ebp - 0x10]
call fcn.00402a26
xor esi, esi
jmp 0x446f79
cmp dword [ebp - 0x18], 0x4b1
jne 0x446f2e
push edi
push esi
mov dword [ebp - 0x18], 0x4b0
call fcn.0042a3db
pop ecx
pop ecx
and edi, 0xfffffffe
cmp byte [ebp + 0xb], 0
jne 0x446faa
push dword [ebp - 0x14]
call fcn.0040d003
pop ecx
push 0
push 0x80
push 4
push 0
push 7
push 0x40000000
push eax
lea ecx, [ebp - 0x10]
call fcn.00403ce4
cmp dword [ebp - 0x10], 0
jne 0x446faa
lea ecx, [ebp - 0x1c]
call fcn.00427365
lea ecx, [ebp - 0xc]
call fcn.00427365
lea ecx, [ebp - 0x10]
call fcn.00402a26
xor esi, esi
inc esi
lea ecx, [ebp - 0x14]
call fcn.00427365
lea ecx, [ebp - 0x4c]
call fcn.00427365
lea ecx, [ebp - 0x28]
call fcn.00427365
lea ecx, [ebp - 0x50]
call fcn.00427365
lea ecx, [ebp - 0x64]
call fcn.00427365
pop edi
mov eax, esi
pop esi
pop ebx
leave
ret 8
and dword [ebp - 0x48], 0
mov eax, 0x3a8
cmp ebx, eax
mov ebx, 0x3b6
jne 0x446fc1
cmp dword [ebp - 0x20], ebx
je 0x446fcb
cmp dword [ebp - 0x20], eax
jne 0x447039
cmp dword [ebp - 0x2c], ebx
jne 0x447039
cmp byte [ebp - 2], 0
je 0x446fd5
mov byte [ebp - 2], 3
lea ecx, [ebp - 0x40]
call fcn.0042c693
xor eax, eax
cmp dword [ebp - 0x2c], ebx
sete al
push eax
lea eax, [ebp - 0x40]
push eax
push esi
call fcn.0042feb4
mov eax, esi
mov esi, dword [ebp - 0x40]
add esp, 0xc
push esi
mov dword [ebp - 0xc], esi
mov dword [ebp - 0x40], eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
cmp byte [ebp - 2], 3
mov edi, eax
mov dword [ebp - 0x38], esi
jne 0x447031
cmp byte [ebp + 0xb], 0
jne 0x447031
test edi, edi
jle 0x447024
push edi
push esi
lea ecx, [ebp - 0x10]
call fcn.00427285
lea ecx, [ebp - 0x40]
call fcn.00427365
jmp 0x4471f1
lea ecx, [ebp - 0x40]
call fcn.00427365
mov ebx, edi
shr ebx, 1
cmp dword [ebp - 0x18], 0
jne 0x44707c
lea ebx, [edi + 0xa]
lea eax, [ebx + 0xa]
push eax
lea ecx, [ebp - 0x1c]
call fcn.0042c850
push ebx
push dword [ebp - 0x1c]
push edi
push esi
push 0
push dword [ebp - 0x20]
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov ebx, eax
test ebx, ebx
jge 0x44706b
xor ebx, ebx
mov eax, dword [ebp - 0x1c]
lea edi, [ebx + ebx]
and word [eax + edi], 0
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x58], eax
cmp dword [ebp - 0x34], 0x4b1
jne 0x447090
push edi
push dword [ebp - 0x38]
call fcn.0042a3db
pop ecx
pop ecx
xor eax, eax
cmp dword [ebp - 0x34], eax
jle 0x447141
cmp byte [ebp - 3], al
je 0x4470de
xor esi, esi
push esi
lea eax, [ebp - 0x14]
push eax
push edi
push dword [ebp - 0x38]
push dword [ebp - 0x14]
push dword [ebp - 0x24]
call fcn.0043ac43
add esp, 0x18
lea ecx, [ebp - 0x48]
call fcn.00427365
lea ecx, [ebp - 0x1c]
call fcn.00427365
lea ecx, [ebp - 0xc]
call fcn.00427365
lea ecx, [ebp - 0x10]
call fcn.00402a26
jmp 0x446f79
cmp byte [ebp + 0xb], 0
jne 0x447109
cmp edi, eax
jle 0x4471f1
cmp dword [ebp - 0x30], 0
je 0x447100
push dword [ebp - 0x3c]
lea ecx, [ebp - 0x10]
push dword [ebp - 0x30]
call fcn.00427285
push edi
push dword [ebp - 0x38]
jmp 0x4471a6
cmp dword [ebp - 0x44], eax
jne 0x447146
lea ecx, [ebp + 8]
call fcn.0042c809
push ebx
push dword [ebp - 0x38]
lea eax, [ebp + 8]
push eax
call fcn.0042fdf3
mov ecx, dword [ebp - 0x24]
add esp, 0xc
push dword [ebp + 8]
push dword [ebp - 0x14]
call fcn.0042b2cd
lea ecx, [ebp + 8]
call fcn.00427365
jmp 0x4471f1
cmp dword [ebp - 0x44], eax
je 0x44714e
push dword [ebp - 0x58]
jmp 0x4471e6
shr edi, 1
lea esi, [edi + edi*2]
lea esi, [esi + esi + 0xa]
lea eax, [esi + 1]
push eax
lea ecx, [ebp - 0x48]
call fcn.0042c6d7
mov ebx, dword [ebp - 0x48]
xor eax, eax
push eax
push eax
push esi
push ebx
push edi
push dword [ebp - 0x38]
push eax
push dword [ebp - 0x2c]
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
mov esi, eax
test esi, esi
jge 0x447182
xor esi, esi
cmp byte [ebp + 0xb], 0
mov byte [ebx + esi], 0
jne 0x4471b0
test esi, esi
jle 0x4471f1
cmp dword [ebp - 0x30], 0
je 0x4471a4
push dword [ebp - 0x3c]
lea ecx, [ebp - 0x10]
push dword [ebp - 0x30]
call fcn.00427285
push esi
push ebx
lea ecx, [ebp - 0x10]
call fcn.00427285
jmp 0x4471f1
cmp byte [ebp - 3], 0
je 0x4471d5
push 0
lea eax, [ebp - 0x14]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_lstrlenA]
push eax
push ebx
push dword [ebp - 0x14]
push dword [ebp - 0x24]
call fcn.0043ac43
add esp, 0x18
jmp 0x4471f1
push esi
lea eax, [ebp - 0x1c]
push ebx
push eax
call fcn.0042fd92
add esp, 0xc
push dword [ebp - 0x1c]
push dword [ebp - 0x14]
mov ecx, dword [ebp - 0x24]
call fcn.0042b2cd
xor esi, esi
cmp dword [ebp - 0x10], esi
je 0x4470b9
push dword [ebp - 0x10]
call dword [sym.imp.KERNEL32.dll_FlushFileBuffers]
jmp 0x4470b9