Function at 0x417d18
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
push ebx
mov ebx, dword [ebp + 8]
push esi
xor esi, esi
cmp ebx, esi
mov dword [ebp - 4], esi
je 0x417f84
cmp word [ebx], si
je 0x417f84
cmp dword [ebp + 0xc], esi
push edi
je 0x417e69
mov edi, dword [sym.imp.SHLWAPI.dll_StrChrW]
push 0x3d
push ebx
call edi
mov esi, eax
test esi, esi
jne 0x417d6e
push 0x3e
push ebx
call edi
mov esi, eax
test esi, esi
jne 0x417d6e
push 0x3c
push ebx
call edi
mov esi, eax
test esi, esi
je 0x417f83
movzx edi, word [esi]
and word [esi], 0
push ebx
call fcn.00417c9b
add esi, 2
push esi
mov ebx, eax
call fcn.00417c9b
cmp byte [ebp + 0x10], 0
pop ecx
pop ecx
mov esi, eax
jne 0x417dc3
push esi
push ebx
call dword [sym.imp.KERNEL32.DLL_lstrcmpiW]
cmp di, 0x3e
jne 0x417da4
xor ecx, ecx
test eax, eax
jmp 0x417df2
cmp di, 0x3c
jne 0x417db0
xor ecx, ecx
test eax, eax
jmp 0x417e08
cmp di, 0x3d
jne 0x417f83
xor ecx, ecx
test eax, eax
jmp 0x417f5c
cmp byte [ebp + 0x10], 1
push ebx
jne 0x417e10
call fcn.00403b00
push esi
mov ebx, eax
call fcn.00403b00
cmp di, 0x3d
pop ecx
pop ecx
jne 0x417de8
xor ecx, ecx
cmp ebx, eax
jmp 0x417f5c
cmp di, 0x3e
jne 0x417dfa
xor ecx, ecx
cmp ebx, eax
setg cl
jmp 0x417f5f
cmp di, 0x3c
jne 0x417f83
xor ecx, ecx
cmp ebx, eax
setl cl
jmp 0x417f5f
call fcn.0040b066
fstp qword [ebp - 0xc]
push esi
call fcn.0040b066
cmp di, 0x3d
pop ecx
pop ecx
jne 0x417e30
fcomp qword [ebp - 0xc]
fnstsw ax
test ah, 0x44
jmp 0x417e3e
cmp di, 0x3e
jne 0x417e4c
fcomp qword [ebp - 0xc]
fnstsw ax
test ah, 5
jp 0x417e60
mov dword [ebp - 4], 1
jmp 0x417f83
cmp di, 0x3c
jne 0x417f81
fcomp qword [ebp - 0xc]
fnstsw ax
test ah, 0x41
je 0x417e40
and dword [ebp - 4], 0
jmp 0x417f83
push 4
push ebx
lea eax, [ebp - 0xc]
push eax
call dword [sym.imp.SHLWAPI.dll_StrCpyNW]
movzx eax, word [ebx + 6]
cmp ax, 0x3e
je 0x417ebf
cmp ax, 0x3c
je 0x417ebf
cmp ax, 0x3d
je 0x417ebf
cmp byte [ebp + 0x10], 2
push ebx
jne 0x417eb0
call fcn.00403cd5
test eax, eax
pop ecx
jne 0x417e40
push ebx
call fcn.00403cfd
test eax, eax
pop ecx
jne 0x417e40
mov dword [ebp - 4], esi
jmp 0x417f83
call fcn.0040b210
pop ecx
xor ecx, ecx
cmp ecx, eax
jmp 0x417f78
lea esi, [ebx + 8]
push esi
call fcn.00403b00
mov edi, dword [sym.imp.KERNEL32.DLL_lstrcmpiW]
mov dword [ebp + 8], eax
lea eax, [ebp - 0xc]
mov dword [esp], 0x40348c
push eax
call edi
test eax, eax
jne 0x417ef6
cmp byte [ebp + 0x10], 2
jne 0x417eef
call fcn.0040aea9
jmp 0x417f4d
call fcn.0040aeb3
jmp 0x417f4d
push 0x403484
lea eax, [ebp - 0xc]
push eax
call edi
test eax, eax
jne 0x417f36
cmp word [esi], 0x23
jne 0x417f16
lea eax, [ebx + 0xa]
push eax
call fcn.00403b00
jmp 0x417f23
movzx eax, word [esi + 2]
push eax
call fcn.00403ab0
movzx eax, ax
pop ecx
push 0
push 0
push eax
mov dword [ebp + 8], eax
call fcn.00417ba4
add esp, 0xc
jmp 0x417f4d
cmp byte [ebp + 0x10], 2
lea eax, [ebp - 0xc]
push eax
jne 0x417f47
call fcn.0040425b
jmp 0x417f4c
call fcn.0040426c
pop ecx
movzx ecx, word [ebx + 6]
cmp cx, 0x3d
jne 0x417f64
xor ecx, ecx
cmp eax, dword [ebp + 8]
sete cl
mov dword [ebp - 4], ecx
jmp 0x417f83
cmp cx, 0x3e
jne 0x417f6f
cmp dword [ebp + 8], eax
jmp 0x417f78
cmp cx, 0x3c
jne 0x417f83
cmp eax, dword [ebp + 8]
sbb eax, eax
neg eax
mov dword [ebp - 4], eax
jmp 0x417f83
fstp st(0)
pop edi
mov eax, dword [ebp - 4]
pop esi
pop ebx
leave
ret