Function at 0x4172e0
Capabilities:
Copy file
Delete file
Get disk information

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov eax, 0x67c4
call fcn.0059fbd0
push ebx
mov ebx, dword [ebp + 0x10]
mov eax, dword [ebx]
push esi
push edi
mov byte [eax + 0x9f73], 1
mov edi, dword [ebx]
push 0x66
push dword [edi + 4]
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
mov dword [esp + 0x48], eax
je 0x417343
push 2
push 0xffffffffffffffff
push 0x100c
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov dword [esp + 0x4c], eax
jmp 0x41733f
push 0
push edi
call fcn.00403773
lea esi, [esp + 0x48]
call fcn.004039a6
mov eax, dword [esp + 0x4c]
test eax, eax
jge 0x41732a
xor esi, esi
inc esi
push esi
push str.WarnHardDrive
push 0x5bbe1c
call fcn.00435206
push esi
push str.UseFileNameAsTagTitle
push str.FileProperties
mov byte [esp + 0x43], al
call fcn.00435206
mov byte [esp + 0x3f], al
mov eax, dword [ebx]
push 0x66
mov byte [esp + 0x33], 1
mov byte [esp + 0x1a], 0
call fcn.00403942
mov dword [esp + 0x44], eax
mov eax, dword [ebx]
push 0x66
push dword [eax + 4]
xor edi, edi
mov dword [esp + 0x48], esi
mov byte [esp + 0x2f], 0
mov dword [esp + 0x28], edi
call dword [sym.imp.USER32.dll_GetDlgItem]
cmp eax, edi
mov dword [esp + 0xc], eax
je 0x4173f3
push 2
push 0xffffffffffffffff
push 0x100c
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
cmp eax, edi
mov dword [esp + 0x10], eax
jl 0x4173f3
push 8
call fcn.004a8f86
cmp eax, edi
pop ecx
je 0x4173d8
mov ecx, dword [esp + 0x10]
mov dword [eax], edi
mov dword [eax + 4], ecx
jmp 0x4173da
xor eax, eax
mov ecx, dword [esp + 0x20]
lea esi, [esp + 0xc]
mov dword [eax], ecx
mov dword [esp + 0x20], eax
call fcn.004039a6
cmp dword [esp + 0x10], edi
jge 0x4173c1
lea eax, [esp + 0x918]
push eax
call fcn.0041a190
lea eax, [esp + 0x27b0]
push eax
lea eax, [esp + 0x91c]
push eax
push str.TempFolder
push str.Conversions
call fcn.00457b24
lea edx, [esp + 0x27b0]
lea edi, [esp + 0x3e10]
call fcn.00401671
call fcn.004ae396
test al, al
jne 0x417449
call fcn.004ae0e2
test al, al
mov byte [esp + 0x34], 1
je 0x41744e
mov byte [esp + 0x34], 0
mov eax, dword [ebx]
and dword [esp + 0x28], 0
and dword [esp + 0x18], 0
push 0x66
mov byte [esp + 0x3a], 1
push dword [eax + 4]
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
mov dword [esp + 0xc], eax
je 0x418919
push 2
push 0xffffffffffffffff
push 0x100c
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
test eax, eax
mov dword [esp + 0x10], eax
jl 0x418919
xor esi, esi
cmp dword [esp + 0x10], esi
jl 0x418b53
cmp byte [esp + 0x34], 0
je 0x4174b7
mov eax, dword [ebx]
push dword [eax + 4]
call fcn.004abba3
test al, al
je 0x418b96
mov edi, dword [esp + 0x10]
lea eax, [esp + 0xf8]
push eax
push dword [ebx]
call fcn.0040fdd7
lea ecx, [esp + 0xf8]
lea esi, [esp + 0x1d60]
call fcn.004a2d7d
mov eax, esi
push eax
push dword [esp + 0x48]
mov esi, 0x104
push dword [esp + 0x48]
lea edi, [esp + 0xd34]
push 0x5c31c8
call fcn.004a9039
mov esi, dword [ebp + 0xc]
add esp, 0x10
lea eax, [esp + 0xa8]
push eax
xor edi, edi
push 0x65
push dword [esi + 4]
mov dword [esp + 0xc0], edi
mov dword [esp + 0xbc], edi
mov dword [esp + 0xb8], edi
mov dword [esp + 0xb4], edi
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_GetClientRect]
lea eax, [esp + 0xd28]
push eax
lea ecx, [esp + 0xac]
mov eax, esi
call fcn.00403431
lea ecx, [esi + 0xee]
mov eax, dword [ecx]
push edi
lea edx, [esp + 0xd2c]
push edx
call dword [eax + 0x20]
call fcn.00424a1a
test al, al
jne 0x417583
mov ecx, esi
add ecx, 0xee
mov eax, dword [ecx]
push 1
push 0x5c31f0
call dword [eax + 0x20]
mov eax, dword [ebx]
push 0x66
push eax
mov eax, dword [esp + 0x18]
call fcn.0040382d
mov ecx, esi
add ecx, 0xee
push ecx
push eax
mov eax, dword [ebx]
lea edi, [esp + 0x100]
call fcn.00428251
mov eax, dword [esp + 0x10]
push 1
push 0x66
push dword [ebx]
lea esi, [esp + 0x30c]
call fcn.00403865
mov edx, esi
push 0x104
lea esi, [esp + 0x29bc]
call fcn.004a8ff7
mov eax, esi
push eax
call fcn.0058fe0e
pop ecx
lea eax, [esp + 0x300]
push eax
mov eax, esi
call fcn.00401016
mov eax, edi
push eax
call fcn.00401b98
test al, al
jne 0x41761e
push dword [0x61d4c0]
push dword [esp + 0x14]
push 0x66
push dword [ebx]
push 4
pop eax
call fcn.00403745
mov eax, dword [esp + 0x10]
push 3
push dword [ebx]
call fcn.00403773
jmp 0x418905
lea eax, [esp + 0x300]
push eax
call fcn.0040c717
test al, al
je 0x417657
mov eax, dword [esp + 0x10]
push 4
push dword [ebx]
call fcn.00403773
push dword [0x61d5b0]
push dword [esp + 0x14]
push 0x66
push dword [ebx]
push 4
pop eax
call fcn.00403745
jmp 0x418905
lea eax, [esp + 0x300]
push eax
call fcn.00401e1c
test al, al
je 0x41767d
mov eax, dword [esp + 0x10]
push 4
push dword [ebx]
call fcn.00403773
push dword [0x61d5c0]
jmp 0x417642
lea eax, [esp + 0x300]
push eax
call fcn.00401e84
test al, al
je 0x4176a3
mov eax, dword [esp + 0x10]
push 4
push dword [ebx]
call fcn.00403773
push dword [0x61d5c8]
jmp 0x417642
push dword [esp + 0x10]
mov eax, dword [ebx]
call fcn.0040391d
test al, al
je 0x418905
mov esi, dword [esp + 0x10]
push 1
push dword [ebx]
mov eax, esi
call fcn.00403773
mov eax, dword [ebx]
push 0x66
push eax
mov eax, esi
call fcn.0040382d
push eax
call fcn.0040bbc7
test al, al
je 0x4176e4
push 4
mov eax, esi
jmp 0x417612
push esi
lea eax, [esp + 0xfc]
push eax
push dword [ebx]
lea ecx, [esp + 0x195c]
call fcn.00419ae8
test al, al
je 0x418bd9
cmp byte [esp + 0x37], 0
je 0x4177a5
lea eax, [esp + 0x1950]
push eax
call dword [sym.imp.KERNEL32.dll_GetDriveTypeW]
cmp eax, 5
je 0x4177a5
mov edi, dword [ebp + 0xc]
push esi
push dword [ebx]
lea eax, [esp + 0x100]
push eax
lea eax, [esp + 0x3e1c]
push eax
lea eax, [esp + 0x1960]
push eax
push edi
call fcn.00417056
test al, al
jne 0x4177a8
mov eax, dword [esp + 0x10]
push 4
push dword [ebx]
call fcn.00403773
push 0x5c321c
push dword [esp + 0x14]
push 0x66
push dword [ebx]
push 4
pop eax
call fcn.00403745
mov ebx, dword [ebp + 8]
lea edi, [esp + 0x18]
mov dword [ebx], 2
call fcn.0043bde4
mov ecx, dword [esp + 0x28]
test ecx, ecx
je 0x41778f
mov eax, dword [ecx]
push 1
call dword [eax]
lea eax, [esp + 0x918]
push eax
call fcn.0041a252
mov esi, dword [esp + 0x20]
jmp 0x418c2b
mov edi, dword [ebp + 0xc]
lea ecx, [esp + 0xf8]
lea esi, [esp + 0x1748]
call fcn.004a2d7d
push dword [ebx + 0xd]
mov eax, esi
push eax
lea eax, [esp + 0x1958]
push eax
lea eax, [esp + 0x514]
push eax
call fcn.004a2dab
lea ecx, [esp + 0xf8]
lea eax, [esp + 0xf30]
call fcn.0040171e
lea eax, [esp + 0xf30]
push str..cda
push eax
call fcn.005a6122
test eax, eax
pop ecx
pop ecx
jne 0x417821
cmp byte [esp + 0x27], al
jne 0x417821
lea eax, [esp + 0xf8]
push eax
push dword [ebx]
lea ecx, [edi + 0xee]
call fcn.0040f8e7
mov byte [esp + 0x27], 1
push 0
lea eax, [esp + 0xfc]
push eax
mov eax, edi
call fcn.0041ced7
lea ecx, [edi + 0xee]
mov dword [esp + 0x30], eax
mov eax, dword [ecx]
call dword [eax]
test al, al
jne 0x418c34
cmp dword [esp + 0x30], 0
jne 0x417867
mov eax, dword [esp + 0x10]
push 4
push dword [ebx]
call fcn.00403773
push dword [0x61d4d0]
jmp 0x417642
push dword [esp + 0x30]
lea eax, [esp + 0x50c]
push eax
push dword [ebx]
call fcn.0040fe4e
test al, al
je 0x418905
lea ecx, [esp + 0x508]
lea esi, [esp + 0x1748]
call fcn.004a2d7d
lea ecx, [esp + 0x508]
lea eax, [esp + 0x1950]
call fcn.0040162b
lea eax, [esp + 0xd28]
push eax
mov eax, esi
call fcn.00401016
mov eax, esi
push eax
lea eax, [esp + 0xd2c]
push eax
call fcn.004a3027
test al, al
jne 0x41795c
lea eax, [esp + 0xd28]
push eax
push 0x5c3248
mov esi, 0x104
lea edi, [esp + 0xf38]
call fcn.004a9039
pop ecx
pop ecx
mov eax, edi
push eax
push dword [esp + 0x14]
push 0x66
push dword [ebx]
push 4
pop eax
call fcn.00403745
mov eax, dword [esp + 0x10]
push 3
push dword [ebx]
call fcn.00403773
lea eax, [esp + 0xf8]
push eax
push dword [ebx]
call fcn.0040fb26
test al, al
je 0x418905
mov ebx, dword [ebp + 8]
lea edi, [esp + 0x18]
mov dword [ebx], 2
call fcn.0043bde4
mov ecx, dword [esp + 0x28]
test ecx, ecx
je 0x417946
mov eax, dword [ecx]
push 1
call dword [eax]
lea eax, [esp + 0x918]
push eax
call fcn.0041a252
mov esi, dword [esp + 0x20]
jmp 0x418c84
push dword [ebx + 0xd]
lea eax, [esp + 0x174c]
push eax
lea eax, [esp + 0x1958]
push eax
lea eax, [esp + 0x514]
push eax
call fcn.004a2dab
mov eax, dword [ebp + 0xc]
push dword [eax + 4]
lea eax, [esp + 0x1a]
push eax
lea eax, [esp + 0x37]
push eax
lea eax, [esp + 0x514]
push eax
push dword [ebx]
call fcn.0040fbb4
push dword [ebx + 0xd]
lea eax, [esp + 0x304]
push eax
mov byte [esp + 0x1c], 0
mov byte [esp + 0x1f], 0
call fcn.005a6122
test eax, eax
pop ecx
pop ecx
jne 0x417c0a
push eax
push str.CopyFileSameFormat
mov edi, str.Conversions
push edi
call fcn.00435206
push 0
push str.ConvertFileSameFormat
push edi
mov byte [esp + 0x21], al
call fcn.00435206
test al, al
je 0x417a80
push 0
push str.DoNotConvertFile
push edi
call fcn.00435206
test al, al
je 0x417a80
mov esi, str..mp3
lea eax, [esp + 0x300]
push esi
push eax
call fcn.005a6122
test eax, eax
pop ecx
pop ecx
jne 0x417a80
mov eax, dword [ebx + 0xd]
push esi
push eax
call fcn.005a6122
test eax, eax
pop ecx
pop ecx
jne 0x417a80
lea eax, [esp + 0xf8]
push eax
call fcn.00406bec
lea esi, [esp + 0xdc]
mov dword [esp + 0x1c], eax
call fcn.00406dd2
cmp byte [esp + 0xdc], 0
je 0x417a58
movzx eax, word [esp + 0xdd]
jmp 0x417a6f
movzx eax, word [esp + 0xe0]
movzx ecx, word [esp + 0xe2]
add eax, ecx
cdq
sub eax, edx
sar eax, 1
imul eax, eax, 0x3e8
cmp dword [esp + 0x1c], eax
jg 0x417a80
mov byte [esp + 0x15], 1
push 0
push str.DoNotConvertSameFormat
push edi
call fcn.00435206
test al, al
je 0x417abe
push dword [0x61d530]
push dword [esp + 0x14]
push 0x66
push dword [ebx]
push 4
pop eax
call fcn.00403745
mov eax, dword [esp + 0x10]
push 4
push dword [ebx]
call fcn.00403773
mov byte [esp + 0x17], 1
jmp 0x417c05
cmp byte [esp + 0x15], 0
je 0x417c0a
cmp byte [esp + 0x2f], 0
je 0x417c0a
cmp byte [esp + 0x16], 0
jne 0x417c0a
lea eax, [esp + 0xf8]
push eax
lea eax, [esp + 0x50c]
push eax
call fcn.005a6122
test eax, eax
pop ecx
pop ecx
je 0x417be2
mov esi, dword [ebp + 0xc]
add esi, 0xee
mov eax, dword [esi]
push 0
push 0x5c3310
mov ecx, esi
call dword [eax + 0x20]
mov eax, dword [esi]
push 1
lea ecx, [esp + 0x1d64]
push ecx
mov ecx, esi
call dword [eax + 0x20]
push 0
lea eax, [esp + 0x50c]
push eax
lea eax, [esp + 0x100]
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileW]
test eax, eax
jne 0x417bb2
push dword [0x61d538]
push dword [esp + 0x14]
push 0x66
push dword [ebx]
push 4
pop eax
call fcn.00403745
mov eax, dword [esp + 0x10]
push 3
push dword [ebx]
call fcn.00403773
lea eax, [esp + 0xf8]
push eax
push dword [ebx]
call fcn.0040fb26
test al, al
jne 0x417c05
mov ebx, dword [ebp + 8]
lea edi, [esp + 0x18]
mov dword [ebx], 2
call fcn.0043bde4
mov ecx, dword [esp + 0x28]
test ecx, ecx
je 0x417b9c
mov eax, dword [ecx]
push 1
call dword [eax]
lea eax, [esp + 0x918]
push eax
call fcn.0041a252
mov esi, dword [esp + 0x20]
jmp 0x418c98
push dword [0x61d540]
push dword [esp + 0x14]
push 0x66
push dword [ebx]
push 4
pop eax
call fcn.00403745
lea eax, [esp + 0x508]
push eax
push dword [esp + 0x14]
push dword [ebx]
call fcn.00419f06
mov byte [esp + 0x14], 1
jmp 0x417c05
push dword [0x61d548]
push dword [esp + 0x14]
push 0x66
push dword [ebx]
push 4
pop eax
call fcn.00403745
mov eax, dword [esp + 0x10]
push 4
push dword [ebx]
call fcn.00403773
mov byte [esp + 0x16], 1
cmp byte [esp + 0x2f], 0
mov dword [esp + 0x1c], 2
je 0x418ada
and word [esp + 0x1b58], 0
cmp byte [esp + 0x16], 0
mov byte [esp + 0x35], 0
mov byte [esp + 0x15], 0
jne 0x4184aa
lea eax, [esp + 0xf8]
push eax
lea eax, [esp + 0x50c]
push eax
call fcn.005a6122
test eax, eax
pop ecx
pop ecx
jne 0x417cdc
lea eax, [esp + 0x1b58]
push eax
lea eax, [esp + 0x50c]
mov byte [esp + 0x39], 1
call fcn.00401016
lea ecx, [esp + 0x508]
lea eax, [esp + 0xb20]
call fcn.0040162b
lea ecx, [esp + 0x508]
lea eax, [esp + 0xd28]
call fcn.004016d4
lea eax, [esp + 0xd28]
push eax
push 0x5c3334
push 0x5bc83c
mov esi, 0x104
lea edi, [esp + 0x134c]
call fcn.004a9039
add esp, 0xc
push 0x5b07d8
mov eax, edi
push eax
lea eax, [esp + 0xb28]
push eax
lea eax, [esp + 0x514]
push eax
call fcn.004a2dab
lea eax, [esp + 0xf8]
push eax
lea edi, [esp + 0x27b4]
lea esi, [esp + 0x113c]
call fcn.0040c012
mov eax, dword [ebx]
mov eax, dword [eax + 4]
mov ecx, edi
push ecx
lea ecx, [esp + 0x50c]
push ecx
lea ecx, [esp + 0x100]
push ecx
lea esi, [esp + 0x2bcc]
call fcn.0040b9cf
lea eax, [esp + 0x300]
push eax
call fcn.004fa2ca
test al, al
je 0x417d46
lea eax, [esp + 0xf8]
push eax
mov eax, dword [ebp + 0xc]
push dword [eax + 4]
lea esi, [esp + 0x308]
call fcn.004fa3e2
lea eax, [esp + 0x300]
push str..wav
push eax
call fcn.005a6122
pop ecx
xor esi, esi
test eax, eax
pop ecx
je 0x417e24
mov eax, dword [esp + 0x30]
push 0x5c3338
add eax, 4
lea ecx, [esp + 0x90]
mov dword [esp + 0x90], esi
mov dword [esp + 0x94], esi
mov dword [esp + 0x98], esi
call fcn.00406290
mov edi, dword [esp + 0x8c]
cmp edi, esi
mov eax, edi
jne 0x417da3
mov eax, 0x5b07d8
mov ecx, 0x5bbe30
call fcn.0040106a
test eax, eax
jne 0x417e1d
push 0x5c3350
push dword [esp + 0x14]
push 0x66
push dword [ebx]
push 4
pop eax
call fcn.00403745
mov eax, dword [esp + 0x10]
push 4
push dword [ebx]
call fcn.00403773
push edi
call fcn.0058f8c9
cmp byte [esp + 0x3a07], 0
pop ecx
je 0x417df1
lea eax, [esp + 0x3a04]
push eax
call fcn.00406570
cmp word [esp + 0x1138], si
mov dword [esp + 0x39ff], esi
je 0x418905
lea eax, [esp + 0x1138]
push eax
mov eax, 0x1f4
call fcn.004a1fa0
jmp 0x418905
push edi
call fcn.0058f8c9
pop ecx
cmp byte [esp + 0x3f], 0
je 0x417e88
mov edi, dword [esp + 0x30]
mov dword [esp + 0x80], esi
mov dword [esp + 0x84], esi
mov dword [esp + 0x88], esi
add edi, 4
mov esi, str.TITLE
push esi
lea ecx, [esp + 0x84]
mov eax, edi
call fcn.00406290
mov eax, dword [esp + 0x80]
test eax, eax
je 0x417e6c
cmp word [eax], 0
jne 0x417e7b
lea eax, [esp + 0x1d60]
push eax
push esi
push edi
call fcn.00436f3c
push dword [esp + 0x80]
call fcn.0058f8c9
pop ecx
push dword [esp + 0x10]
mov eax, dword [ebx]
push 0x66
call fcn.00403984
lea eax, [esp + 0x1d60]
push eax
push dword [esp + 0x48]
mov esi, 0x104
push dword [esp + 0x48]
lea edi, [esp + 0xf3c]
push 0x5c3398
call fcn.004a9039
mov esi, dword [ebp + 0xc]
xor eax, eax
add esp, 0x10
mov dword [esp + 0xa4], eax
mov dword [esp + 0xa0], eax
mov dword [esp + 0x9c], eax
mov dword [esp + 0x98], eax
lea eax, [esp + 0x98]
push eax
push 0x65
push dword [esi + 4]
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_GetClientRect]
mov eax, edi
push eax
lea ecx, [esp + 0x9c]
mov eax, esi
call fcn.00403431
lea eax, [esp + 0x37f7]
push eax
mov eax, edi
call fcn.00401016
fild dword [esp + 0x44]
lea eax, [esi + 0xee]
mov dword [esp + 0xc8], eax
mov eax, dword [esp + 0x40]
dec eax
mov dword [esp + 0x1c], eax
fild dword [esp + 0x1c]
mov ecx, 0x5befc4
lea eax, [esp + 0x300]
fdiv st(1)
mov dword [esp + 0xc4], 0x5c86b4
fstp qword [esp + 0xcc]
fld1
fdivrp st(1)
fstp qword [esp + 0xd4]
call fcn.0040106a
test eax, eax
je 0x418067
mov ecx, str..aax
lea eax, [esp + 0x300]
call fcn.0040106a
test eax, eax
je 0x418067
mov al, byte [esp + 0x27]
mov esi, dword [ebx + 0xd]
neg al
push 0x5bcb30
push esi
sbb eax, eax
not eax
and eax, dword [esp + 0x38]
mov edi, eax
call fcn.005a6122
test eax, eax
pop ecx
pop ecx
je 0x417fbd
push str..ogg
push esi
call fcn.005a6122
test eax, eax
pop ecx
pop ecx
jne 0x417fbf
xor edi, edi
push 0xffffffffffffffff
push str.SoundStreamIndex
push str.FFMPEGAUDIO
call fcn.00402241
lea eax, [esp + 0x300]
push str..mov
push eax
call fcn.005a6122
test eax, eax
pop ecx
pop ecx
je 0x418000
lea eax, [esp + 0x300]
push str..mkv
push eax
call fcn.005a6122
test eax, eax
pop ecx
pop ecx
jne 0x418012
lea eax, [esp + 0xf8]
push eax
mov eax, dword [ebx]
push dword [eax + 4]
call fcn.00416c56
push edi
lea eax, [esp + 0x2bc4]
push eax
lea eax, [esp + 0xcc]
push eax
lea eax, [esp + 0xfc]
push eax
call fcn.004218d4
mov eax, dword [eax]
test eax, eax
mov dword [esp + 0x1c], eax
je 0x418049
lea eax, [esp + 0x300]
push eax
push dword [ebx]
call fcn.00410c3d
lea eax, [esp + 0x1f68]
push eax
lea eax, [esp + 0x2bca]
call fcn.00401016
mov esi, 0x5bbe1c
jmp 0x41810b
push 0
mov edi, str.Audiobook
push edi
mov esi, 0x5bbe1c
push esi
call fcn.00435206
test al, al
mov byte [esp + 0x54], al
jne 0x4180b9
mov eax, dword [ebx]
mov eax, dword [eax + 4]
lea ecx, [esp + 0x54]
push ecx
push 0x5c33e4
push 0x5c3410
push str.DRM______._____.
push eax
mov ecx, 0x5bbe48
mov eax, 0x5c33d4
call fcn.0045af3b
test al, al
je 0x4180b9
mov eax, str.switch_kb_1337
call fcn.004a9ab0
push dword [esp + 0x30]
lea eax, [esp + 0x2bc4]
push eax
lea eax, [esp + 0xcc]
push eax
lea eax, [esp + 0xf8]
push eax
call fcn.004218d4
mov eax, dword [eax]
mov dword [esp + 0x1c], eax
lea eax, [esp + 0x1f68]
push eax
lea eax, [esp + 0x2bca]
call fcn.00401016
cmp dword [esp + 0x1c], 0
jne 0x418100
mov byte [esp + 0x54], 1
push dword [esp + 0x54]
push edi
push esi
call fcn.004351cd
lea eax, [esp + 0x35ef]
push eax
call fcn.00401a5f
cmp byte [esp + 0x31de], 0
je 0x418126
mov byte [ebx + 4], 1
inc dword [esp + 0x40]
cmp dword [esp + 0x1c], 0
jne 0x4181f3
lea eax, [esp + 0x33e7]
push eax
push str.LastCreatedFile
push esi
call fcn.00457b57
lea eax, [esp + 0x508]
push eax
call fcn.00401a29
mov edi, eax
lea eax, [esp + 0x508]
push eax
mov dword [esp + 0xc0], edx
call fcn.00401b98
test al, al
je 0x41818b
mov eax, edi
or eax, dword [esp + 0xbc]
jne 0x4183db
cmp byte [esp + 0x2bc0], al
je 0x4183db
lea ecx, [esp + 0x508]
lea eax, [esp + 0xb20]
call fcn.0040171e
lea eax, [esp + 0xb20]
push str..ogg
push eax
call fcn.005a6122
test eax, eax
pop ecx
pop ecx
push 0x104
lea esi, [esp + 0x1f6c]
mov edx, 0x5c34c0
je 0x4181cd
mov edx, dword [0x61d508]
call fcn.004a8ff7
or edi, dword [esp + 0xbc]
mov dword [esp + 0x1c], 2
jne 0x41821d
lea eax, [esp + 0x508]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
jmp 0x41821d
lea eax, [esp + 0x508]
push eax
call fcn.00401b98
test al, al
je 0x418212
lea eax, [esp + 0x508]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
cmp dword [esp + 0x1c], 2
jne 0x4183ce
push dword [ebx + 0xd]
lea eax, [esp + 0x304]
push eax
lea eax, [esp + 0xd30]
push 0x5bc83c
push eax
call fcn.00401000
mov eax, dword [ebx + 0xd]
push str..wav
push eax
call fcn.005a6122
add esp, 0x18
test eax, eax
jne 0x4182f2
push 2
mov dx, 0x10
mov esi, 0xac44
lea eax, [esp + 0x1344]
call fcn.00406372
lea eax, [esp + 0x1340]
push eax
call fcn.00406548
push 0
push str.SampleRateAuto
mov esi, str.WavSettings
push esi
call fcn.00435206
push 0
push str.ChansAuto
push esi
mov byte [esp + 0x23], al
call fcn.00435206
movzx eax, al
lea ecx, [esp + 0x1f68]
push ecx
push eax
movzx eax, byte [esp + 0x1f]
push eax
push dword [esp + 0x1350]
movzx eax, word [esp + 0x1352]
push eax
movzx eax, word [esp + 0x1354]
push eax
push str._d__d__d__d__d__s
mov esi, 0x104
lea edi, [esp + 0xb3c]
call fcn.004a9039
add esp, 0x1c
lea eax, [esp + 0xd28]
push eax
lea eax, [esp + 0xb24]
jmp 0x41837d
mov eax, dword [ebx + 0xd]
push str..mp3
push eax
call fcn.005a6122
test eax, eax
pop ecx
pop ecx
jne 0x41836e
lea esi, [esp + 0x70]
call fcn.00406dd2
lea eax, [esp + 0x1f68]
push eax
movzx eax, word [esp + 0x78]
push eax
movzx eax, word [esp + 0x7e]
push eax
movzx eax, byte [esp + 0x84]
push eax
movzx eax, byte [esp + 0x8a]
push eax
movzx eax, byte [esp + 0x87]
push eax
movzx eax, byte [esp + 0x88]
push eax
movzx eax, word [esp + 0x8d]
push eax
push str._d__d__d__d__d__d__d__s
mov esi, 0x104
lea edi, [esp + 0xb44]
call fcn.004a9039
add esp, 0x24
jmp 0x4182de
lea eax, [esp + 0xd28]
push eax
lea eax, [esp + 0x1f6c]
call fcn.004a9c36
mov eax, dword [esp + 0x10]
push 3
push dword [ebx]
call fcn.00403773
lea eax, [esp + 0x1f68]
push eax
push dword [esp + 0x14]
push 0x66
push dword [ebx]
push 4
pop eax
call fcn.00403745
lea eax, [esp + 0xf8]
push eax
push dword [ebx]
call fcn.0040fb26
test al, al
je 0x418461
lea esi, [esp + 0xc]
call fcn.004039a6
xor edi, edi
jmp 0x418ccd
xor esi, esi
inc esi
cmp dword [esp + 0x1c], esi
je 0x418d62
push dword [ebx + 0xd]
lea eax, [esp + 0x304]
push eax
lea eax, [esp + 0xb28]
push 0x5bc83c
push eax
call fcn.00401000
add esp, 0x10
lea eax, [esp + 0xb20]
push eax
call fcn.004a9c14
lea eax, [esp + 0x508]
push eax
push dword [esp + 0x14]
push dword [ebx]
call fcn.00419f06
lea eax, [esp + 0x1f68]
push eax
push dword [esp + 0x14]
push 0x66
push dword [ebx]
push 4
pop eax
call fcn.00403745
mov byte [esp + 0x15], 1
call fcn.004ae396
test al, al
je 0x41844a
call fcn.004ae3a8
test eax, eax
je 0x41845c
call fcn.004ae0e2
test al, al
jne 0x418461
call fcn.004ae396
test al, al
jne 0x418461
call fcn.004ae3ba
cmp byte [esp + 0x3a03], 0
mov dword [esp + 0xc4], 0x608e7c
je 0x418483
lea eax, [esp + 0x3a04]
push eax
call fcn.00406570
and dword [esp + 0x39ff], 0
cmp word [esp + 0x1138], 0
je 0x4184f4
lea eax, [esp + 0x1138]
push eax
mov eax, 0x1f4
call fcn.004a1fa0
jmp 0x4184f4
cmp byte [esp + 0x14], 0
je 0x4184c6
lea eax, [esp + 0x508]
push eax
push dword [esp + 0x14]
push dword [ebx]
call fcn.00419f06
jmp 0x4184fb
cmp byte [esp + 0x17], 0
jne 0x4188de
push dword [0x61d560]
push dword [esp + 0x14]
push 0x66
push dword [ebx]
push 4
pop eax
call fcn.00403745
mov eax, dword [esp + 0x10]
push 4
push dword [ebx]
call fcn.00403773
cmp dword [esp + 0x1c], 0
je 0x418506
cmp byte [esp + 0x14], 0
je 0x4188de
cmp byte [esp + 0x15], 0
je 0x41851e
lea eax, [esp + 0x508]
push eax
push dword [esp + 0x34]
call fcn.0041cc2a
cmp byte [esp + 0x35], 0
je 0x418657
lea eax, [esp + 0x508]
push eax
call fcn.00401b98
test al, al
je 0x418657
mov eax, dword [esp + 0x10]
push 4
push 0x66
push dword [ebx]
lea esi, [esp + 0xf3c]
call fcn.00403865
lea ecx, [esp + 0x508]
lea eax, [esp + 0x1340]
call fcn.004016d4
lea ecx, [esp + 0x1b58]
lea eax, [esp + 0xb20]
call fcn.004016d4
lea eax, [esp + 0xb20]
push eax
lea eax, [esp + 0x1344]
push eax
mov eax, esi
push eax
call fcn.0043be43
mov eax, esi
push eax
push dword [esp + 0x14]
push 0x66
push dword [ebx]
push 4
pop eax
call fcn.00403745
lea eax, [esp + 0x508]
push eax
call fcn.00401a29
and dword [esp + 0x60], 0
mov dword [esp + 0x64], edx
and dword [esp + 0x64], 0x80000000
and edx, 0x7fffffff
mov dword [esp + 0x58], eax
mov dword [esp + 0x5c], edx
fild qword [esp + 0x58]
push ecx
fild qword [esp + 0x64]
push ecx
mov esi, 0x104
lea edi, [esp + 0xd30]
fchs
faddp st(1)
fmul qword [0x60d848]
fstp qword [esp]
push str._03.3f
call fcn.004a9039
add esp, 0xc
mov eax, edi
push eax
push dword [esp + 0x14]
push 0x66
push dword [ebx]
push 2
pop eax
call fcn.00403745
lea eax, [esp + 0x1b58]
push eax
mov eax, 0xbb8
call fcn.004a1fa0
test al, al
je 0x41863f
lea eax, [esp + 0x1b58]
push eax
lea eax, [esp + 0x50c]
push eax
call fcn.004a1fde
lea eax, [esp + 0x1b58]
push eax
push dword [esp + 0x14]
push dword [ebx]
call fcn.00419f06
jmp 0x4187fd
push 0
push str.DeleteSourceFile
push str.Conversions
call fcn.00435206
test al, al
je 0x4187fd
mov edi, dword [esp + 0x10]
lea eax, [esp + 0xf30]
push eax
push dword [ebx]
call fcn.0040fdd7
lea eax, [esp + 0xf30]
push eax
lea eax, [esp + 0xfc]
push eax
call fcn.005a6122
test eax, eax
pop ecx
pop ecx
je 0x4186c0
lea eax, [esp + 0xf8]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
lea eax, [esp + 0xf8]
push eax
lea eax, [esp + 0xf34]
call fcn.00401016
lea eax, [esp + 0x508]
push eax
lea eax, [esp + 0xfc]
push eax
call fcn.005a6122
test eax, eax
pop ecx
pop ecx
je 0x4187fd
lea eax, [esp + 0xf8]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
test eax, eax
jne 0x4186fd
push dword [0x61d550]
push edi
jmp 0x4187f1
lea ecx, [esp + 0x508]
lea esi, [esp + 0xb20]
call fcn.004a2d7d
mov eax, esi
push eax
push dword [esp + 0x14]
xor eax, eax
push 0x66
push dword [ebx]
call fcn.00403745
lea ecx, [esp + 0x508]
lea eax, [esp + 0x1340]
call fcn.0040171e
lea eax, [esp + 0x1340]
push eax
push dword [esp + 0x14]
xor eax, eax
push 0x66
push dword [ebx]
inc eax
call fcn.00403745
lea eax, [esp + 0x508]
push eax
call fcn.00401a29
and dword [esp + 0x48], 0
mov dword [esp + 0x4c], edx
and dword [esp + 0x4c], 0x80000000
and edx, 0x7fffffff
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], edx
fild qword [esp + 0x68]
push ecx
fild qword [esp + 0x4c]
push ecx
mov esi, 0x104
lea edi, [esp + 0xd30]
fchs
faddp st(1)
fmul qword [0x60d848]
fstp qword [esp]
push str._03.3f
call fcn.004a9039
add esp, 0xc
mov eax, edi
push eax
push dword [esp + 0x14]
push 0x66
push dword [ebx]
push 2
pop eax
call fcn.00403745
lea ecx, [esp + 0x508]
lea eax, [esp + 0x1138]
call fcn.0040162b
lea eax, [esp + 0x1138]
push eax
push dword [esp + 0x14]
push 0x66
push dword [ebx]
push 3
pop eax
call fcn.00403745
push dword [0x61d558]
push dword [esp + 0x14]
push 0x66
push dword [ebx]
push 4
pop eax
call fcn.00403745
cmp dword [ebx + 0x11], 1
mov esi, dword [esp + 0x20]
jne 0x418843
xor ecx, ecx
test esi, esi
mov eax, esi
je 0x418816
mov eax, dword [eax]
inc ecx
test eax, eax
jne 0x41880f
cmp ecx, 1
seta al
push eax
lea eax, [esp + 0x50c]
push eax
push dword [esp + 0x18]
lea eax, [esp + 0x100]
push eax
mov eax, dword [ebp + 0xc]
push ebx
call fcn.0041717c
cmp dword [eax], 1
je 0x418e10
cmp dword [ebx + 0x11], 2
jne 0x418888
push 0x24c8
call fcn.004a8f86
mov edi, eax
test edi, edi
pop ecx
je 0x41886c
mov eax, dword [esp + 0x10]
lea edx, [esp + 0x508]
call fcn.004259fa
jmp 0x41886e
xor eax, eax
mov ecx, dword [esp + 0x18]
xor edx, edx
cmp ecx, edx
mov dword [eax], edx
jne 0x418882
mov dword [esp + 0x18], eax
jmp 0x418888
mov ecx, dword [ecx]
cmp dword [ecx], edx
jne 0x418880
mov dword [ecx], eax
cmp dword [ebx + 0x11], 4
jne 0x4188de
lea eax, [esp + 0x28]
push eax
lea eax, [esp + 0x3a]
push eax
push dword [esp + 0x18]
mov eax, dword [ebp + 0xc]
push dword [ebx]
lea edx, [esp + 0x518]
lea edi, [esp + 0x1f78]
call fcn.00427555
lea eax, [esp + 0x38]
push eax
mov eax, edi
push eax
mov byte [esp + 0x2594], 1
call fcn.00427638
cmp dword [esp + 0x38], 2
jne 0x4188d3
inc dword [ebx + 5]
cmp dword [esp + 0x38], 1
je 0x418e51
mov eax, dword [ebx]
push 0x66
call fcn.00403942
test eax, eax
jne 0x418905
mov esi, dword [esp + 0x20]
jmp 0x418901
push dword [esi + 4]
mov al, 1
push 0x66
push dword [ebx]
call fcn.004038e2
mov esi, dword [esi]
test esi, esi
jne 0x4188f1
lea esi, [esp + 0xc]
call fcn.004039a6
cmp dword [esp + 0x10], 0
jge 0x417492
mov eax, dword [esp + 0x18]
and dword [esp + 0x30], 0
test eax, eax
mov byte [esp + 0x14], 0
mov dword [esp + 0x1c], eax
je 0x418a0e
mov eax, dword [esp + 0x1c]
push 0
push 0x32
add eax, 8
push eax
lea eax, [esp + 0xb2c]
push eax
call dword [sym.imp.SHLWAPI.dll_PathCompactPathExW]
lea eax, [esp + 0xb20]
push eax
push 0x5c35c8
mov esi, 0x104
lea edi, [esp + 0x1348]
call fcn.004a9039
mov eax, dword [esp + 0x24]
pop ecx
pop ecx
lea ecx, [eax + 0x210]
push ecx
add eax, 0x894
push eax
lea edi, [esp + 0x4024]
call fcn.005462da
mov edi, 0x5c35f0
mov esi, 0x5bf5a4
lea eax, [esp + 0x1340]
push eax
push dword [ebp + 0xc]
lea eax, [esp + 0x4024]
call fcn.00546335
test al, al
jne 0x418ebc
cmp dword [esp + 0x44], 1
je 0x418e92
cmp dword [esp + 0x30], 0
je 0x418e92
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + 4]
push 0x5c35e4
push 0x5c364c
push edi
push 0x5c3658
push eax
mov eax, esi
call fcn.0045a94a
cmp eax, 6
je 0x4189f6
cmp eax, 7
jne 0x418994
mov byte [esp + 0x14], 1
lea eax, [esp + 0x401c]
push eax
call fcn.00418f64
cmp byte [esp + 0x14], 0
jne 0x418a95
mov esi, dword [esp + 0x30]
test esi, esi
je 0x418a95
fild dword [esp + 0x44]
mov eax, dword [esp + 0x40]
fld1
dec eax
fdiv st(1)
mov dword [esp + 0x38], eax
fstp qword [esp + 0x68]
fild dword [esp + 0x38]
fdivrp st(1)
fstp qword [esp + 0x58]
push dword [esi + 4]
fld qword [esp + 0x6c]
mov eax, dword [ebp + 0xc]
sub esp, 0x10
fstp qword [esp + 8]
lea edx, [esi + 8]
fld qword [esp + 0x6c]
lea edi, [esp + 0x1f7c]
fstp qword [esp]
push dword [ebx]
call fcn.00425a62
lea eax, [esp + 0x38]
push eax
mov eax, edi
push eax
mov dword [esp + 0x27ae], esi
mov byte [esp + 0x25a4], 1
call fcn.00425c02
cmp dword [esp + 0x38], 2
jne 0x418a84
inc dword [ebx + 5]
cmp dword [esp + 0x38], 1
je 0x418eff
mov esi, dword [esi]
test esi, esi
jne 0x418a35
mov eax, dword [ebx]
mov ebx, dword [ebp + 8]
and dword [ebx], 0
lea edi, [esp + 0x30]
mov byte [eax + 0x9f73], 1
call fcn.0043bde4
lea edi, [esp + 0x18]
call fcn.0043bde4
mov ecx, dword [esp + 0x28]
test ecx, ecx
je 0x418ac4
mov eax, dword [ecx]
push 1
call dword [eax]
lea eax, [esp + 0x918]
push eax
call fcn.0041a252
mov esi, dword [esp + 0x20]
jmp 0x418f55
push 0x5c3328
push dword [esp + 0x14]
push 0x66
push dword [ebx]
push 4
pop eax
call fcn.00403745
mov eax, dword [esp + 0x10]
push 4
push dword [ebx]
call fcn.00403773
lea esi, [esp + 0xc]
call fcn.004039a6
cmp dword [esp + 0x10], 0
jge 0x418ada
mov ebx, dword [ebp + 8]
lea edi, [esp + 0x18]
mov dword [ebx], 2
call fcn.0043bde4
mov ecx, dword [esp + 0x28]
test ecx, ecx
je 0x418b2c
mov eax, dword [ecx]
push 1
call dword [eax]
lea eax, [esp + 0x918]
push eax
call fcn.0041a252
mov esi, dword [esp + 0x20]
jmp 0x418b4a
mov eax, esi
mov esi, dword [esi]
push eax
call fcn.0059022d
pop ecx
test esi, esi
jne 0x418b3f
jmp 0x418f59
mov ebx, dword [ebp + 8]
lea edi, [esp + 0x18]
mov dword [ebx], esi
call fcn.0043bde4
mov ecx, dword [esp + 0x28]
cmp ecx, esi
je 0x418b6f
mov eax, dword [ecx]
push 1
call dword [eax]
lea eax, [esp + 0x918]
push eax
call fcn.0041a252
mov edi, dword [esp + 0x20]
jmp 0x418b8d
mov eax, edi
mov edi, dword [edi]
push eax
call fcn.0059022d
pop ecx
cmp edi, esi
jne 0x418b82
jmp 0x418f59
mov ebx, dword [ebp + 8]
lea edi, [esp + 0x18]
mov dword [ebx], esi
call fcn.0043bde4
mov ecx, dword [esp + 0x28]
cmp ecx, esi
je 0x418bb2
mov eax, dword [ecx]
push 1
call dword [eax]
lea eax, [esp + 0x918]
push eax
call fcn.0041a252
mov edi, dword [esp + 0x20]
jmp 0x418bd0
mov eax, edi
mov edi, dword [edi]
push eax
call fcn.0059022d
pop ecx
cmp edi, esi
jne 0x418bc5
jmp 0x418f59
mov ebx, dword [ebp + 8]
lea edi, [esp + 0x18]
mov dword [ebx], 2
call fcn.0043bde4
mov ecx, dword [esp + 0x28]
test ecx, ecx
je 0x418bf9
mov eax, dword [ecx]
push 1
call dword [eax]
lea eax, [esp + 0x918]
push eax
call fcn.0041a252
mov esi, dword [esp + 0x20]
jmp 0x418c17
mov eax, esi
mov esi, dword [esi]
push eax
call fcn.0059022d
pop ecx
test esi, esi
jne 0x418c0c
jmp 0x418f59
mov eax, esi
mov esi, dword [esi]
push eax
call fcn.0059022d
pop ecx
test esi, esi
jne 0x418c20
jmp 0x418f59
mov ebx, dword [ebp + 8]
xor esi, esi
inc esi
lea edi, [esp + 0x18]
mov dword [ebx], esi
call fcn.0043bde4
mov ecx, dword [esp + 0x28]
test ecx, ecx
je 0x418c52
mov eax, dword [ecx]
push esi
call dword [eax]
lea eax, [esp + 0x918]
push eax
call fcn.0041a252
mov esi, dword [esp + 0x20]
jmp 0x418c70
mov eax, esi
mov esi, dword [esi]
push eax
call fcn.0059022d
pop ecx
test esi, esi
jne 0x418c65
jmp 0x418f59
mov eax, esi
mov esi, dword [esi]
push eax
call fcn.0059022d
pop ecx
test esi, esi
jne 0x418c79
jmp 0x418f59
mov eax, esi
mov esi, dword [esi]
push eax
call fcn.0059022d
pop ecx
test esi, esi
jne 0x418c8d
jmp 0x418f59
push dword [0x61d578]
push dword [esp + 0x14]
push 0x66
push dword [ebx]
push 4
pop eax
call fcn.00403745
mov eax, dword [esp + 0x10]
push 4
push dword [ebx]
call fcn.00403773
lea esi, [esp + 0xc]
call fcn.004039a6
cmp dword [esp + 0x10], edi
jge 0x418ca1
cmp byte [esp + 0x3a03], 0
mov eax, dword [ebp + 8]
mov dword [eax], 2
mov dword [esp + 0xc4], 0x608e7c
je 0x418cfe
lea eax, [esp + 0x3a04]
push eax
call fcn.00406570
cmp word [esp + 0x1138], di
mov dword [esp + 0x39ff], edi
je 0x418d21
lea eax, [esp + 0x1138]
push eax
mov eax, 0x1f4
call fcn.004a1fa0
lea edi, [esp + 0x18]
call fcn.0043bde4
mov ecx, dword [esp + 0x28]
test ecx, ecx
je 0x418d38
mov eax, dword [ecx]
push 1
call dword [eax]
lea eax, [esp + 0x918]
push eax
call fcn.0041a252
mov esi, dword [esp + 0x20]
jmp 0x418d56
mov eax, esi
mov esi, dword [esi]
push eax
call fcn.0059022d
pop ecx
test esi, esi
jne 0x418d4b
mov eax, dword [ebp + 8]
jmp 0x418f5b
mov eax, dword [esp + 0x10]
xor edi, edi
push edi
push dword [ebx]
call fcn.00403773
lea eax, [esp + 0x1f68]
push eax
push dword [esp + 0x14]
push 0x66
push dword [ebx]
push 4
pop eax
call fcn.00403745
cmp byte [esp + 0x3a03], 0
mov eax, dword [ebp + 8]
mov dword [eax], esi
mov dword [esp + 0xc4], 0x608e7c
je 0x418daf
lea eax, [esp + 0x3a04]
push eax
call fcn.00406570
cmp word [esp + 0x1138], di
mov dword [esp + 0x39ff], edi
je 0x418dd2
lea eax, [esp + 0x1138]
push eax
mov eax, 0x1f4
call fcn.004a1fa0
lea edi, [esp + 0x18]
call fcn.0043bde4
mov ecx, dword [esp + 0x28]
test ecx, ecx
je 0x418de9
mov eax, dword [ecx]
push 1
call dword [eax]
lea eax, [esp + 0x918]
push eax
call fcn.0041a252
mov esi, dword [esp + 0x20]
jmp 0x418e07
mov eax, esi
mov esi, dword [esi]
push eax
call fcn.0059022d
pop ecx
test esi, esi
jne 0x418dfc
jmp 0x418d5a
mov eax, dword [ebp + 8]
xor ebx, ebx
inc ebx
lea edi, [esp + 0x18]
mov dword [eax], ebx
call fcn.0043bde4
mov ecx, dword [esp + 0x28]
test ecx, ecx
je 0x418e2e
mov eax, dword [ecx]
push ebx
call dword [eax]
lea eax, [esp + 0x918]
push eax
call fcn.0041a252
jmp 0x418e48
mov eax, esi
mov esi, dword [esi]
push eax
call fcn.0059022d
pop ecx
test esi, esi
jne 0x418e3d
jmp 0x418d5a
mov eax, dword [ebp + 8]
xor ebx, ebx
inc ebx
lea edi, [esp + 0x18]
mov dword [eax], ebx
call fcn.0043bde4
mov ecx, dword [esp + 0x28]
test ecx, ecx
je 0x418e6f
mov eax, dword [ecx]
push ebx
call dword [eax]
lea eax, [esp + 0x918]
push eax
call fcn.0041a252
jmp 0x418e89
mov eax, esi
mov esi, dword [esi]
push eax
call fcn.0059022d
pop ecx
test esi, esi
jne 0x418e7e
jmp 0x418d5a
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + 4]
push edi
push 0x5c3608
push eax
mov ecx, 0x5c35e4
mov eax, esi
call fcn.0045aa36
test al, al
mov byte [esp + 0x14], al
je 0x418994
jmp 0x4189f6
lea ecx, [esp + 0x1c]
lea edx, [esp + 0x18]
call fcn.0043be16
mov ecx, dword [esp + 0x30]
xor esi, esi
cmp ecx, esi
mov dword [eax], esi
jne 0x418edd
mov dword [esp + 0x30], eax
jmp 0x418ee3
mov ecx, dword [ecx]
cmp dword [ecx], esi
jne 0x418edb
mov dword [ecx], eax
lea eax, [esp + 0x401c]
push eax
call fcn.00418f64
cmp dword [esp + 0x1c], esi
jne 0x418933
jmp 0x418a0e
mov ebx, dword [ebp + 8]
xor esi, esi
inc esi
lea edi, [esp + 0x30]
mov dword [ebx], esi
call fcn.0043bde4
lea edi, [esp + 0x18]
call fcn.0043bde4
mov ecx, dword [esp + 0x28]
test ecx, ecx
je 0x418f26
mov eax, dword [ecx]
push esi
call dword [eax]
lea eax, [esp + 0x918]
push eax
call fcn.0041a252
mov esi, dword [esp + 0x20]
jmp 0x418f44
mov eax, esi
mov esi, dword [esi]
push eax
call fcn.0059022d
pop ecx
test esi, esi
jne 0x418f39
jmp 0x418f59
mov eax, esi
mov esi, dword [esi]
push eax
call fcn.0059022d
pop ecx
test esi, esi
jne 0x418f4a
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc