Function at 0x404bb0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
mov eax, dword fs:[0]
push 0x42fb61
push eax
mov eax, 0x2788
mov dword fs:[0], esp
call fcn.00414970
push ebx
push ebp
push esi
mov esi, ecx
push edi
lea ecx, [esp + 0x14]
call fcn.00428690
push fcn.004253d4
push 0x404a30
push 0x18
lea eax, [esp + 0x34]
xor ebp, ebp
push 4
push eax
mov dword [esp + 0x27b4], ebp
call fcn.004148e2
push ebp
push ebp
push str.EEPROM.dat
lea ecx, [esp + 0x20]
mov byte [esp + 0x27ac], 1
xor edi, edi
xor bl, bl
call fcn.004287a2
test eax, eax
push ebp
push ebp
jne 0x404c37
push str.Does_not_exist_EEPROM_setting_file._r_nCreate_a_default_EEPROM_setting_file._r_n
call fcn.0042ad29
mov ecx, esi
call fcn.00404340
jmp 0x404fc1
mov edx, dword [esp + 0x1c]
lea ecx, [esp + 0x1c]
call dword [edx + 0x28]
lea ecx, [esp + 0x14]
call fcn.00428a9c
mov dword [esp + 0x24], eax
push eax
lea eax, [esp + 0x8c]
lea ecx, [esp + 0x18]
push eax
call fcn.004288bf
mov ecx, dword [esp + 0x24]
test ecx, ecx
jle 0x404cd7
lea edx, [esp + 0x28]
mov dword [esp + 0x10], edx
mov al, byte [esp + ebp + 0x88]
cmp al, 0x22
jne 0x404ca6
test bl, bl
jne 0x404c8d
cmp edi, 0x18
je 0x404faa
mov bl, 1
jmp 0x404cd2
cmp al, 0x22
jne 0x404ca6
cmp bl, 1
jne 0x404cb9
mov eax, dword [esp + 0x10]
xor bl, bl
inc edi
add eax, 4
mov dword [esp + 0x10], eax
jmp 0x404cd2
cmp bl, 1
jne 0x404cb9
mov ecx, dword [esp + 0x10]
push eax
call fcn.004256b9
mov ecx, dword [esp + 0x24]
lea eax, [ecx - 1]
cmp ebp, eax
jne 0x404cd2
cmp edi, 0x14
jl 0x404fdc
cmp bl, 1
je 0x404fdc
inc ebp
cmp ebp, ecx
jl 0x404c71
mov eax, dword [esp + 0x28]
push eax
call fcn.004146fc
mov ecx, dword [esi + 0x4b0]
mov edi, dword [sym.imp.USER32.dll_SendMessageA]
add esp, 4
push 0
push eax
push 0x14e
push ecx
call edi
mov edx, dword [esp + 0x2c]
push edx
call fcn.004146fc
mov dword [esi + 0x4d0], eax
mov eax, dword [esp + 0x34]
push eax
call fcn.004146fc
add esp, 8
lea ecx, [esp + 0x34]
lea ebp, [esi + 0x4e0]
mov dword [esi + 0x4f4], eax
push ecx
mov ecx, ebp
call fcn.004254c9
lea ebx, [esi + 0x4e4]
lea edx, [esp + 0x38]
push edx
mov ecx, ebx
call fcn.004254c9
mov eax, dword [esp + 0x3c]
push eax
call fcn.004146fc
mov ecx, dword [esi + 0x474]
add esp, 4
push 0
push eax
push 0x14e
push ecx
call edi
lea edx, [esp + 0x40]
lea ecx, [esi + 0x4e8]
push edx
call fcn.004254c9
lea eax, [esp + 0x44]
lea ecx, [esi + 0x4ec]
push eax
call fcn.004254c9
mov ecx, dword [esp + 0x48]
push ecx
call fcn.004146fc
mov edx, dword [esi + 0x438]
add esp, 4
push 0
push eax
push 0x14e
push edx
call edi
lea eax, [esp + 0x4c]
lea ecx, [esi + 0x4f0]
push eax
call fcn.004254c9
lea edx, [esp + 0x50]
lea ecx, [esi + 0x4d4]
push edx
call fcn.004254c9
lea eax, [esp + 0x54]
lea ecx, [esi + 0x4d8]
push eax
call fcn.004254c9
lea edx, [esp + 0x58]
lea ecx, [esi + 0x4dc]
push edx
call fcn.004254c9
mov eax, dword [esi + 0x4b0]
push 0
push 0
push 0x147
push eax
call edi
cmp eax, 2
jne 0x404e89
lea edx, [esp + 0x5c]
lea ecx, [esi + 0x500]
push edx
call fcn.004254c9
mov eax, dword [esi + 0x500]
push eax
call fcn.004146fc
cdq
sub eax, edx
sar eax, 1
push eax
lea eax, [esi + 0x4f8]
push 0x43c274
push eax
call fcn.00422dfe
add esp, 0x10
lea eax, [esi + 0x4f8]
lea ecx, [esi + 0x4fc]
push eax
call fcn.004254c9
lea eax, [esp + 0x60]
lea ecx, [esi + 0x50c]
push eax
call fcn.004254c9
mov eax, dword [esi + 0x50c]
push eax
call fcn.004146fc
cdq
sub eax, edx
sar eax, 1
push eax
lea eax, [esi + 0x508]
push 0x43c274
push eax
call fcn.00422dfe
add esp, 0x10
lea eax, [esi + 0x508]
lea ecx, [esi + 0x504]
push eax
call fcn.004254c9
mov ecx, dword [esi + 0x4b0]
push 0
push 0
push 0x147
push ecx
call edi
test eax, eax
jne 0x404ee3
lea edx, [esp + 0x5c]
lea ecx, [esi + 0x4f8]
push edx
call fcn.004254c9
lea eax, [esi + 0x4f8]
lea ecx, [esi + 0x4fc]
push eax
call fcn.004254c9
lea eax, [esp + 0x60]
lea ecx, [esi + 0x508]
push eax
call fcn.004254c9
lea eax, [esi + 0x508]
lea ecx, [esi + 0x504]
push eax
call fcn.004254c9
lea edx, [esp + 0x64]
lea ecx, [esi + 0x514]
push edx
call fcn.004254c9
mov eax, dword [esp + 0x68]
push eax
call fcn.004146fc
mov ecx, dword [esp + 0x70]
mov dword [esi + 0x510], eax
push ecx
call fcn.004146fc
mov edx, dword [esp + 0x78]
mov byte [esi + 0x76c], al
push edx
call fcn.004146fc
mov byte [esi + 0x76d], al
mov eax, dword [esp + 0x80]
push eax
call fcn.004146fc
add esp, 0x10
mov byte [esi + 0x76e], al
mov ecx, dword [esi + 0x4b0]
push 0
push 0
push 0x147
push ecx
call edi
cmp eax, 2
jne 0x404f89
mov edx, dword [esp + 0x78]
push edx
call fcn.004146fc
mov dword [esi + 0x524], eax
mov eax, dword [esp + 0x80]
push eax
call fcn.004146fc
mov ecx, dword [esp + 0x88]
mov dword [esi + 0x528], eax
push ecx
call fcn.004146fc
add esp, 0xc
mov dword [esi + 0x52c], eax
mov edx, dword [esi + 0x4b0]
push 0
push 0
push 0x147
push edx
call edi
cmp eax, 2
jne 0x404ff8
lea eax, [esp + 0x84]
push eax
jmp 0x405013
push 0
push 0
push str.Loaded_a_Wrong_EEPROM.dat_file_format_
call fcn.0042ad29
lea ecx, [esp + 0x14]
call fcn.004289bd
push fcn.004253d4
push 0x18
lea ecx, [esp + 0x30]
push 4
mov byte [esp + 0x27ac], 0
push ecx
jmp 0x4051db
push 0
push 0
push str.Loaded_a_Wrong_EEPROM.dat_file_format_
call fcn.0042ad29
lea ecx, [esp + 0x14]
call fcn.004289bd
jmp 0x4051c5
mov ecx, dword [esi + 0x4b0]
push 0
push 0
push 0x147
push ecx
call edi
test eax, eax
jne 0x40501e
lea edx, [esp + 0x78]
push edx
lea ecx, [esi + 0x530]
call fcn.004254c9
push ebp
lea ecx, [esi + 0x544]
call fcn.004254c9
push ebx
lea ecx, [esi + 0x548]
call fcn.004254c9
lea eax, [esi + 0x4e8]
lea ecx, [esi + 0x54c]
push eax
call fcn.004254c9
lea eax, [esi + 0x4ec]
lea ecx, [esi + 0x550]
push eax
call fcn.004254c9
lea eax, [esi + 0x4f0]
lea ecx, [esi + 0x534]
push eax
call fcn.004254c9
lea eax, [esi + 0x4d4]
lea ecx, [esi + 0x538]
push eax
call fcn.004254c9
lea eax, [esi + 0x4dc]
lea ecx, [esi + 0x540]
push eax
call fcn.004254c9
lea eax, [esi + 0x4d8]
lea ecx, [esi + 0x53c]
push eax
call fcn.004254c9
mov eax, dword [esi + 0x4b0]
push 0
push 0
push 0x147
push eax
call edi
cmp eax, 2
jne 0x4050dd
lea ecx, [esi + 0x500]
push ecx
lea ecx, [esi + 0x554]
call fcn.004254c9
lea edx, [esi + 0x50c]
lea ecx, [esi + 0x558]
push edx
call fcn.004254c9
mov eax, dword [esi + 0x4b0]
push 0
push 0
push 0x147
push eax
call edi
test eax, eax
jne 0x405141
lea ecx, [esi + 0x4f8]
push ecx
lea ecx, [esi + 0x554]
call fcn.004254c9
lea edx, [esi + 0x508]
lea ecx, [esi + 0x558]
push edx
call fcn.004254c9
push 0
push 0x400
mov ecx, esi
call fcn.00428358
mov ecx, eax
call fcn.00428533
push 0
push 0x401
mov ecx, esi
call fcn.00428358
mov ecx, eax
call fcn.00428533
lea eax, [esi + 0x514]
lea ecx, [esi + 0x55c]
push eax
call fcn.004254c9
lea ecx, [esp + 0x14]
call fcn.004289bd
push 0
mov ecx, esi
call fcn.004279f0
mov ecx, esi
call fcn.00407b70
mov ebp, 0x435
push ebp
mov ecx, esi
call fcn.00428358
mov eax, dword [eax + 0x1c]
push 0
push 0
push 0xf1
push eax
call edi
inc ebp
cmp ebp, 0x43a
jle 0x405171
mov ebx, 0x449
cmp ebx, 0x44f
je 0x4051b5
push ebx
mov ecx, esi
call fcn.00428358
mov ecx, dword [eax + 0x1c]
push 0
push 0
push 0xf1
push ecx
call edi
inc ebx
cmp ebx, 0x455
jle 0x405196
mov ecx, esi
call fcn.0040c170
push fcn.004253d4
push 0x18
lea edx, [esp + 0x30]
push 4
mov byte [esp + 0x27ac], 0
push edx
call fcn.00414804
lea ecx, [esp + 0x14]
mov dword [esp + 0x27a0], 0xffffffff
call fcn.004286e5
mov ecx, dword [esp + 0x2798]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x2794
ret