Function at 0x4014a0
Capabilities:
Read file on windows
Terminate process
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x444
mov eax, dword [0x445454]
xor eax, ebp
mov dword [ebp - 4], eax
mov ecx, dword [ebp + 0xc]
xor eax, eax
push ebx
push esi
push edi
push str.d:m:p:M:P:ns:i:g:w:r:h_
push ecx
push dword [ebp + 8]
xor edi, edi
mov dword [ebp - 0x444], ecx
mov dword [ebp - 0x434], eax
xor ebx, ebx
mov dword [ebp - 0x438], eax
mov dword [ebp - 0x440], eax
mov dword [ebp - 0x420], eax
mov dword [ebp - 0x424], eax
mov dword [ebp - 0x428], eax
mov dword [ebp - 0x42c], eax
mov dword [ebp - 0x430], eax
mov dword [ebp - 0x41c], eax
mov dword [ebp - 0x418], edi
mov dword [ebp - 0x43c], eax
call fcn.0041bcc0
add esp, 0xc
cmp eax, 0xffffffff
je 0x4017fd
add eax, 0xffffffb3
cmp eax, 0x2a
ja case.0x401534.78
movzx eax, byte [eax + 0x401dbc]
jmp dword [eax*4 + 0x401d8c]
push dword [0x446b44]
call fcn.00420fd6
add esp, 4
mov dword [ebp - 0x434], eax
jmp 0x4017de
mov eax, dword [0x446b44]
mov ebx, 1
mov dword [ebp - 0x420], eax
jmp 0x4017de
mov eax, dword [0x446b44]
mov ebx, 1
mov dword [ebp - 0x424], eax
jmp 0x4017de
push 0x10
push 0
push dword [0x446b44]
call fcn.00421016
add esp, 0xc
mov dword [ebp - 0x428], eax
mov ebx, 1
jmp 0x4017de
push 0x10
push 0
push dword [0x446b44]
call fcn.00421016
add esp, 0xc
mov dword [ebp - 0x42c], eax
mov ebx, 1
jmp 0x4017de
mov dword [ebp - 0x428], 0x1209
mov ebx, 1
mov dword [ebp - 0x42c], 0x2832
jmp 0x4017de
mov eax, dword [0x446b44]
mov ebx, 1
mov dword [ebp - 0x430], eax
jmp 0x4017de
push dword [0x446b44]
call fcn.00420fd6
xor ecx, ecx
add esp, 4
test eax, eax
mov ebx, 1
setg cl
lea ecx, [ecx*2 - 1]
mov dword [ebp - 0x43c], ecx
jmp 0x4017de
mov esi, dword [0x446b44]
mov ecx, str.realtek
mov eax, esi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x401650
test dl, dl
je 0x40164c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x401650
add eax, 2
add ecx, 2
test dl, dl
jne 0x401630
xor eax, eax
jmp 0x401655
sbb eax, eax
or eax, 1
test eax, eax
jne 0x40166b
mov edi, 1
mov dword [ebp - 0x418], edi
mov ebx, edi
jmp 0x4017de
mov ecx, str.realtek_oem
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x401692
test dl, dl
je 0x40168e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x401692
add eax, 2
add ecx, 2
test dl, dl
jne 0x401672
xor eax, eax
jmp 0x401697
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4016ae
mov edi, 2
lea ebx, [eax + 1]
mov dword [ebp - 0x418], edi
jmp 0x4017de
mov ecx, str.noxon
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4016d5
test dl, dl
je 0x4016d1
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4016d5
add eax, 2
add ecx, 2
test dl, dl
jne 0x4016b5
xor eax, eax
jmp 0x4016da
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4016f1
mov edi, 3
lea ebx, [eax + 1]
mov dword [ebp - 0x418], edi
jmp 0x4017de
mov ecx, str.terratec_black
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x401718
test dl, dl
je 0x401714
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x401718
add eax, 2
add ecx, 2
test dl, dl
jne 0x4016f8
xor eax, eax
jmp 0x40171d
sbb eax, eax
or eax, 1
test eax, eax
jne 0x401734
mov edi, 4
lea ebx, [eax + 1]
mov dword [ebp - 0x418], edi
jmp 0x4017de
mov ecx, str.terratec_plus
mov eax, esi
nop dword [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x401760
test dl, dl
je 0x40175c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x401760
add eax, 2
add ecx, 2
test dl, dl
jne 0x401740
xor eax, eax
jmp 0x401765
sbb eax, eax
or eax, 1
test eax, eax
jne 0x401779
mov edi, 5
lea ebx, [eax + 1]
mov dword [ebp - 0x418], edi
jmp 0x4017de
mov eax, str.realtek_sdr
nop
mov cl, byte [esi]
cmp cl, byte [eax]
jne 0x4017a0
test cl, cl
je 0x40179c
mov cl, byte [esi + 1]
cmp cl, byte [eax + 1]
jne 0x4017a0
add esi, 2
add eax, 2
test cl, cl
jne 0x401780
xor eax, eax
jmp 0x4017a5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4017b9
mov edi, 6
lea ebx, [eax + 1]
mov dword [ebp - 0x418], edi
jmp 0x4017de
test edi, edi
je 0x4017de
mov ebx, 1
jmp 0x4017de
mov dword [ebp - 0x41c], 1
mov ebx, 1
mov eax, dword [0x446b44]
mov dword [ebp - 0x438], eax
push str.d:m:p:M:P:ns:i:g:w:r:h_
push dword [ebp - 0x444]
push dword [ebp + 8]
call fcn.0041bcc0
add esp, 0xc
cmp eax, 0xffffffff
jne 0x401521
call fcn.00402c80
mov edi, eax
test edi, edi
je 0x401d45
push edi
push str.Found__d_device_s_:_n
push 2
call fcn.0041e1d8
add esp, 4
push eax
call fcn.004011a0
add esp, 0xc
xor esi, esi
test edi, edi
jle 0x401858
nop dword [eax + eax]
push esi
call fcn.00402d40
add esp, 4
push eax
push esi
push str.___d:___s_n
push 2
call fcn.0041e1d8
add esp, 4
push eax
call fcn.004011a0
inc esi
add esp, 0x10
cmp esi, edi
jl 0x401830
push 0x435944
push 2
call fcn.0041e1d8
add esp, 4
push eax
call fcn.004011a0
mov esi, dword [ebp - 0x434]
push esi
call fcn.00402d40
add esp, 0xc
push eax
push esi
push str.Using_device__d:__s_n
push 2
call fcn.0041e1d8
add esp, 4
push eax
call fcn.004011a0
push esi
push 0x445d10
call fcn.00403880
add esp, 0x18
test eax, eax
js 0x401d69
push 0x435944
push 2
call fcn.0041e1d8
add esp, 4
push eax
call fcn.004011a0
push 0x100
push 0
lea eax, [ebp - 0x104]
push eax
push dword [0x445d10]
call fcn.004043f0
mov edi, eax
add esp, 0x18
test edi, edi
jns 0x401920
cmp edi, 0xfffffffd
jne 0x401902
push str.No_EEPROM_has_been_found._n
push 2
call fcn.0041e1d8
add esp, 4
push eax
call fcn.004011a0
add esp, 8
jmp 0x401d1f
push edi
push str.Failed_to_read_EEPROM__err__i._n
push 2
call fcn.0041e1d8
add esp, 4
push eax
call fcn.004011a0
add esp, 0xc
jmp 0x401d1f
push str.Current_configuration:_n
push 2
call fcn.0041e1d8
add esp, 4
push eax
call fcn.004011a0
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0x414]
push eax
call fcn.00401df0
lea eax, [ebp - 0x414]
push eax
call fcn.00401010
mov esi, dword [ebp - 0x438]
add esp, 0x14
test esi, esi
je 0x401a07
cmp dword [ebp - 0x41c], 0
mov ecx, 0x4359dc
mov eax, 0x4359d8
cmove eax, ecx
push eax
push esi
call fcn.0041e3fa
add esp, 8
mov dword [ebp - 0x440], eax
test eax, eax
jne 0x401997
push str.Error_opening_file__n
jmp 0x4018ea
cmp dword [ebp - 0x41c], 0
push eax
push 0x100
lea eax, [ebp - 0x104]
push 1
push eax
je 0x4019c5
call fcn.0041e5f9
add esp, 0x10
cmp eax, 0x100
je 0x401a07
push str.Error_reading_file__n
jmp 0x4019d9
call fcn.0041e943
add esp, 0x10
cmp eax, 0x100
je 0x4019ee
push str.Short_write__exiting__n
push 2
call fcn.0041e1d8
add esp, 4
push eax
call fcn.004011a0
add esp, 8
jmp 0x401a07
push esi
push str._nDump_to__s_successful._n
push 2
call fcn.0041e1d8
add esp, 4
push eax
call fcn.004011a0
add esp, 0xc
mov eax, dword [ebp - 0x420]
mov edx, 0x100
test eax, eax
je 0x401a5d
mov esi, eax
lea ecx, [esi + 1]
nop dword [eax + eax]
mov al, byte [esi]
inc esi
test al, al
jne 0x401a20
sub esi, ecx
lea eax, [ebp - 0x410]
push 0x100
cmp esi, edx
push 0
push eax
cmovg esi, edx
call fcn.0041d180
mov eax, dword [ebp - 0x420]
push esi
push eax
lea eax, [ebp - 0x410]
push eax
call fcn.0041cc00
add esp, 0x18
mov edx, 0x100
mov eax, dword [ebp - 0x424]
test eax, eax
je 0x401aac
mov esi, eax
lea ecx, [esi + 1]
nop dword [eax]
mov al, byte [esi]
inc esi
test al, al
jne 0x401a70
sub esi, ecx
lea eax, [ebp - 0x310]
push 0x100
cmp esi, 0x100
push 0
push eax
cmovg esi, edx
call fcn.0041d180
mov eax, dword [ebp - 0x424]
push esi
push eax
lea eax, [ebp - 0x310]
push eax
call fcn.0041cc00
add esp, 0x18
mov edx, dword [ebp - 0x428]
test edx, edx
movzx ecx, word [ebp - 0x414]
movzx eax, dx
mov edx, dword [ebp - 0x42c]
cmovg ecx, eax
mov word [ebp - 0x414], cx
test edx, edx
movzx ecx, word [ebp - 0x412]
movzx eax, dx
cmovg ecx, eax
mov eax, dword [ebp - 0x430]
mov word [ebp - 0x412], cx
test eax, eax
je 0x401b3a
mov esi, eax
lea ecx, [esi + 1]
mov al, byte [esi]
inc esi
test al, al
jne 0x401af3
sub esi, ecx
mov dword [ebp - 0x110], 1
mov eax, 0x100
cmp esi, 0x100
push eax
cmovg esi, eax
lea eax, [ebp - 0x210]
push 0
push eax
call fcn.0041d180
mov eax, dword [ebp - 0x430]
push esi
push eax
lea eax, [ebp - 0x210]
push eax
call fcn.0041cc00
add esp, 0x18
mov ecx, dword [ebp - 0x43c]
test ecx, ecx
je 0x401b51
xor eax, eax
test ecx, ecx
setg al
mov dword [ebp - 0x10c], eax
test ebx, ebx
je 0x401d0c
push str._nNew_configuration:_n
push 2
call fcn.0041e1d8
add esp, 4
push eax
call fcn.004011a0
mov eax, dword [ebp - 0x418]
add esp, 8
test eax, eax
je 0x401b8b
push eax
lea eax, [ebp - 0x414]
push eax
call fcn.004011d0
add esp, 8
mov ebx, dword [ebp - 0x41c]
test ebx, ebx
jne 0x401c62
movzx eax, byte [ebp - 0x414]
mov byte [ebp - 0x102], al
mov eax, dword [ebp - 0x414]
shr eax, 8
mov byte [ebp - 0x101], al
movzx eax, byte [ebp - 0x412]
mov byte [ebp - 0x100], al
mov eax, dword [ebp - 0x412]
shr eax, 8
mov byte [ebp - 0xff], al
mov eax, dword [ebp - 0x110]
neg eax
mov word [ebp - 0x104], 0x3228
mov byte [ebp - 0xfc], 2
sbb al, al
and al, 0xa5
cmp dword [ebp - 0x10c], ebx
mov byte [ebp - 0xfe], al
setne cl
cmp dword [ebp - 0x108], ebx
setne al
lea ecx, [ecx*2 + 0x14]
or cl, al
lea eax, [ebp - 0x410]
push eax
lea eax, [ebp - 0x104]
mov byte [ebp - 0xfd], cl
push eax
push 9
call fcn.00401ea0
lea ecx, [ebp - 0x310]
push ecx
lea ecx, [ebp - 0x104]
push ecx
push eax
call fcn.00401ea0
lea ecx, [ebp - 0x210]
push ecx
lea ecx, [ebp - 0x104]
push ecx
push eax
call fcn.00401ea0
add esp, 0x24
mov byte [ebp - 0xb6], bl
test eax, eax
js 0x401d0c
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0x414]
push eax
call fcn.00401df0
lea eax, [ebp - 0x414]
push eax
call fcn.00401010
add esp, 0xc
push str.Write_new_configuration_to_device__y_n__
push 2
call fcn.0041e1d8
add esp, 4
push eax
call fcn.004011a0
add esp, 8
call fcn.0041eaf2
test al, al
je 0x401ca9
cmp al, 0x79
jne 0x401d0c
test ebx, ebx
mov ecx, 0x100
mov eax, 0x80
cmovne eax, ecx
movzx eax, ax
push eax
push 0
lea eax, [ebp - 0x104]
push eax
push dword [0x445d10]
call fcn.00405100
mov edi, eax
add esp, 0x10
test edi, edi
jns 0x401cf4
push edi
push str.Error_while_writing_EEPROM:__i_n
push 2
call fcn.0041e1d8
add esp, 4
push eax
call fcn.004011a0
add esp, 0xc
jmp 0x401d0c
push str._nConfiguration_successfully_written._nPlease_replug_the_device_for_changes_to_take_effect._n
push 2
call fcn.0041e1d8
add esp, 4
push eax
call fcn.004011a0
add esp, 8
mov eax, dword [ebp - 0x440]
test eax, eax
je 0x401d1f
push eax
call fcn.0041e2d3
add esp, 4
push dword [0x445d10]
call fcn.004028c0
mov ecx, dword [ebp - 4]
add esp, 4
mov eax, edi
xor ecx, ebp
cdq
xor eax, edx
pop edi
pop esi
sub eax, edx
pop ebx
call fcn.0041bd07
mov esp, ebp
pop ebp
ret
push str.No_supported_devices_found._n
push 2
call fcn.0041e1d8
add esp, 4
push eax
call fcn.004011a0
add esp, 8
push 1
call fcn.004209fb
call fcn.00401f20
push esi
push str.Failed_to_open_rtlsdr_device__d._n
push 2
call fcn.0041e1d8
add esp, 4
push eax
call fcn.004011a0
add esp, 0xc
push 1
call fcn.004209fb
nop dword [eax]
jle 0x401da3
inc eax
add byte [eax + 0x3b004015], ah
adc eax, 0x16210040
inc eax
add ch, dh
adc eax, 0x15540040
inc eax
add dl, al
adc eax, 0x15690040
inc eax
add bl, dl
pop ss
inc eax
add al, ah
adc eax, 0x17c40040
inc eax
add byte [ebp + ebx + 0x40], ah
add byte [eax], al
or ecx, dword [ebx]
add dword [ebx], ecx
or ecx, dword [ebx]
or ecx, dword [ebx]
or ecx, dword [ebx]
or ecx, dword [ebx]
or ecx, dword [ebx]
or ecx, dword [ebx]
or ecx, dword [ebx]
or ecx, dword [ebx]
or ecx, dword [ebx]
add cl, byte [ebx]
or eax, dword [ebx]
or eax, dword [ebx + ecx]
or ecx, dword [ebx]
add eax, 185010950
or byte [ecx], cl
or ecx, dword [ebx]
or ecx, dword [edx]
int3