Function at 0x431a2d
Capabilities:
Delete file
Get common file path
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x74
mov ecx, 0x1d
dec ecx
mov dword [esp + ecx*4], 0xfffa5a5a
jne 0x431a38
push ebx
push esi
push edi
movzx ebx, byte [0x4b78a1]
cmp ebx, 0x41
jl case.0x431a7d.1
cmp ebx, 0x49
jg case.default.0x431a5f
mov edi, ebx
sub edi, 0x41
jmp dword [edi*4 + 0x5417bc]
cmp ebx, 0x50
jl case.0x431a7d.1
cmp ebx, 0x58
jg case.0x431a7d.1
mov edi, ebx
sub edi, 0x50
jmp dword [edi*4 + 0x5417e0]
movzx edx, byte [0x4b78a2]
mov dword [ebp - 4], edx
mov edi, dword [ebp - 4]
cmp edi, 0x42
jl case.0x431a7d.12
cmp edi, 0x55
jg case.0x431a7d.12
sub edi, 0x42
jmp dword [edi*4 + 0x541804]
call fcn.004114b4
jmp 0x432ddc
call fcn.004114e8
mov edx, eax
cmp dl, 0
jne 0x432ddc
mov word [ebp - 6], 0
push 0x3e8
push 0
call fcn.00413c61
add esp, 8
mov edi, eax
movsx edi, di
mov word [0x4aeda4], di
call fcn.004114e8
mov edx, eax
cmp dl, 0
jne 0x432ddc
call fcn.00411c91
mov edi, eax
mov word [ebp - 6], di
call fcn.004114b4
jmp 0x432ddc
call fcn.004114e8
mov edx, eax
cmp dl, 0
jne 0x432ddc
mov word [ebp - 6], 0
call fcn.00411c91
mov edi, eax
mov word [ebp - 8], di
movzx edi, word [ebp - 8]
cmp edi, 0x96
jle 0x431b40
mov word [ebp - 8], 0x96
call fcn.004114e8
mov edx, eax
cmp dl, 0
jne 0x431b76
call fcn.00411c91
mov edi, eax
mov word [0x4c55d8], di
call fcn.004114e8
mov edx, eax
cmp dl, 0
jne 0x431b76
call fcn.00411c91
mov edi, eax
mov word [ebp - 6], di
call fcn.004114b4
movzx edi, word [ebp - 8]
push edi
call fcn.0043171b
add esp, 4
jmp 0x432ddc
call fcn.004114b4
jmp 0x432ddc
call fcn.004114b4
jmp 0x432ddc
call fcn.004114b4
jmp 0x432ddc
call fcn.004114e8
mov edx, eax
cmp dl, 0
jne 0x432ddc
mov word [ebp - 6], 0
call fcn.00411c91
mov edi, eax
mov word [ebp - 8], di
call fcn.004114e8
mov edx, eax
cmp dl, 0
jne 0x431bef
call fcn.00411c91
mov edi, eax
mov word [ebp - 6], di
call fcn.004114e8
mov edx, eax
cmp dl, 0
jne 0x431bef
call fcn.004114b4
movzx edi, word [ebp - 8]
cmp edi, 0
je 0x431c11
cmp edi, 0x5a
je 0x431c11
cmp edi, 0xb4
je 0x431c11
cmp edi, 0x10e
jne 0x432ddc
cmp word [ebp - 6], 0
je 0x431c28
mov di, word [ebp - 8]
mov word [0x4bf290], di
jmp 0x432ddc
mov di, word [ebp - 8]
cmp di, word [0x4bf294]
je 0x432ddc
cmp dword [0x4bf2a0], 0
je 0x431c93
movzx edi, word [0x4bf294]
add edi, 0x168
movzx esi, word [ebp - 8]
mov eax, edi
sub eax, esi
mov ecx, 0x168
cdq
idiv ecx
mov edi, edx
movzx edi, di
push edi
push dword [0x4bf2a0]
push dword [0x4bf6b0]
call fcn.00420fcc
add esp, 0xc
push dword [0x4bf29c]
push dword [0x4bf6b0]
push dword [0x4bf2a0]
call sub.CRTDLL.DLL_memcpy
add esp, 0xc
movzx edi, word [ebp - 8]
cmp edi, 0
je 0x431ca4
cmp edi, 0xb4
jne 0x431cd0
mov di, word [0x4bf298]
mov word [0x4bf284], di
mov di, word [0x4bf2a8]
mov word [0x4bf28c], di
mov di, word [ebp - 8]
mov word [0x4bf294], di
jmp 0x432ddc
mov di, word [0x4bf2a8]
mov word [0x4bf284], di
mov di, word [0x4bf298]
mov word [0x4bf28c], di
mov di, word [ebp - 8]
mov word [0x4bf294], di
jmp 0x432ddc
call fcn.004114e8
mov edx, eax
cmp dl, 0
jne 0x432ddc
call fcn.00411c91
mov edi, eax
mov word [ebp - 6], di
call fcn.004114b4
movzx edi, word [ebp - 6]
cmp edi, 0
je 0x431d2e
cmp edi, 1
jne 0x432ddc
movzx edi, word [ebp - 6]
mov dword [0x4b4ae8], edi
jmp 0x432ddc
call fcn.004114e8
mov edx, eax
cmp dl, 0
jne 0x432ddc
mov dword [ebp - 8], 0xffffffff
mov word [ebp - 0xa], 0xffff
mov byte [ebp - 0xb], 0
call fcn.00411ed8
mov dword [ebp - 8], eax
call fcn.004114e8
mov edx, eax
cmp dl, 0
jne 0x431d9b
call fcn.004120f4
mov word [ebp - 0xa], ax
call fcn.004114e8
mov edx, eax
cmp dl, 0
jne 0x431d9b
call fcn.00411c91
mov edi, eax
movzx edi, di
mov edx, edi
mov byte [ebp - 0xb], dl
call fcn.004114b4
mov edi, dword [ebp - 8]
cmp edi, 0x2580
je 0x431de2
cmp edi, 0x4b00
je 0x431de2
cmp edi, 0x9600
je 0x431de2
cmp edi, 0xe100
je 0x431de2
cmp edi, 0x1c200
je 0x431de2
cmp edi, 0x38400
je 0x431de2
cmp edi, 0x70800
je 0x431de2
cmp edi, 0xe1000
jne 0x432ddc
push dword [ebp - 8]
push dword [0x4aec70]
call fcn.004737fa
add esp, 8
mov edi, dword [ebp - 8]
mov dword [0x4a4c08], edi
jmp 0x432ddc
call fcn.004114e8
mov edx, eax
cmp dl, 0
jne 0x432ddc
mov word [ebp - 6], 0xffff
mov word [ebp - 8], 0xffff
mov word [ebp - 0xa], 0
call fcn.004120f4
mov word [ebp - 6], ax
call fcn.004114e8
mov edx, eax
cmp dl, 0
jne 0x432ddc
call fcn.004120f4
mov word [ebp - 8], ax
call fcn.004114e8
mov edx, eax
cmp dl, 0
jne 0x432ddc
call fcn.00411c91
mov edi, eax
movzx edi, di
mov edx, edi
and edx, 0xff
mov edi, edx
mov word [ebp - 0xa], di
call fcn.004114b4
jmp 0x432ddc
call fcn.004114e8
mov edx, eax
cmp dl, 0
jne 0x432ddc
mov byte [ebp - 6], 0
mov byte [ebp - 5], 0
call fcn.00411c91
mov edi, eax
movzx edi, di
mov edx, edi
and edx, 0xff
mov edi, edx
and edi, 0xfe
mov edx, edi
mov byte [ebp - 5], dl
call fcn.004114e8
mov edx, eax
cmp dl, 0
jne 0x432ddc
call fcn.00411c91
mov edi, eax
movzx edi, di
mov edx, edi
mov byte [ebp - 6], dl
call fcn.004114b4
jmp 0x432ddc
call fcn.00431653
jmp 0x432ddc
movzx edx, byte [0x4b78a2]
mov dword [ebp - 8], edx
mov edi, dword [ebp - 8]
cmp edi, 0x4c
je 0x431fa9
jl 0x432049
cmp dword [ebp - 8], 0x53
je 0x431f08
jmp 0x432049
call fcn.004114e8
mov edx, eax
cmp dl, 0
jne 0x432ddc
call fcn.00411c91
mov edi, eax
mov word [ebp - 0xa], di
call fcn.004114b4
cmp word [ebp - 0xa], 0
jne 0x431f55
cmp word [0x4c55e8], 1
jne 0x432ddc
push 0
call fcn.0043178c
add esp, 4
mov word [0x4c55e8], 0
jmp 0x432ddc
cmp word [ebp - 0xa], 1
jne 0x431f81
cmp word [0x4c55e8], 0
jne 0x432ddc
mov word [0x4c55e8], 1
mov word [0x4c5520], 0
jmp 0x432ddc
cmp word [ebp - 0xa], 2
jne 0x432ddc
cmp word [0x4c55e8], 1
jne 0x432ddc
push 0
call fcn.0043178c
add esp, 4
jmp 0x432ddc
call fcn.004114e8
mov edx, eax
cmp dl, 0
jne 0x432ddc
call fcn.00411c91
mov edi, eax
mov word [0x4c55dc], di
call fcn.004114e8
mov edx, eax
cmp dl, 0
jne 0x432ddc
call fcn.00411c91
mov edi, eax
mov word [0x4c5524], di
call fcn.004114e8
mov edx, eax
cmp dl, 0
jne 0x432ddc
call fcn.00411c91
mov edi, eax
mov word [0x4c5540], di
call fcn.004114e8
mov edx, eax
cmp dl, 0
jne 0x432ddc
call fcn.00411c91
mov edi, eax
mov word [0x4c55d4], di
call fcn.004114e8
mov edx, eax
cmp dl, 0
jne 0x432ddc
call fcn.00411c91
mov edi, eax
mov word [0x4c55e0], di
call fcn.004114b4
jmp 0x432ddc
call fcn.00431653
jmp 0x432ddc
movzx edx, byte [0x4b78a2]
mov dword [ebp - 0xc], edx
mov edi, dword [ebp - 0xc]
cmp edi, 0x47
je 0x4322a0
jl 0x4322e0
cmp dword [ebp - 0xc], 0x53
je 0x43207a
jmp 0x4322e0
call fcn.004114e8
mov edx, eax
cmp dl, 0
jne 0x432ddc
cmp byte [0x4e98f8], 0
jne 0x432296
lea edi, [0x4b68a0]
mov dword [ebp - 0x10], edi
push dword [ebp - 0x10]
call fcn.0041298a
add esp, 4
mov edi, eax
movzx edi, di
mov dword [ebp - 0x14], edi
push 0
push dword [ebp - 0x10]
call fcn.00419809
add esp, 8
mov edx, eax
cmp dl, 3
jne 0x432296
push dword [ebp - 0x10]
push 0x4e9954
call fcn.00491c91
add esp, 8
mov edi, dword [ebp - 0x14]
mov word [0x4ebafc], di
movsx edi, word [0x4be49c]
cmp edi, 0
jl 0x432115
test byte [0x4e993c], 0x40
je 0x432103
mov dword [ebp - 0x18], 1
jmp 0x43210a
mov dword [ebp - 0x18], 0
mov edi, dword [ebp - 0x18]
mov edx, edi
mov byte [0x4e98f8], dl
push 0x4e9955
push 0x4b4a14
call fcn.00491c91
add esp, 8
push 0x4b4a14
call fcn.00491d08
add esp, 4
mov edi, eax
sub edi, 1
mov byte [edi + 0x4b4a14], 0
call fcn.0047f974
cmp byte [0x4e98f8], 0
jne 0x432259
push str.names.ini
push dword [ebp - 0x10]
call sub.CRTDLL.DLL_strcat
add esp, 8
push dword [ebp - 0x10]
call fcn.0045b37e
add esp, 4
mov edi, eax
mov edx, edi
cmp dl, 0
je 0x432259
push 0
push dword [ebp - 0x10]
push 0
call fcn.0045b3ac
add esp, 0xc
mov edx, eax
cmp dl, 0
jne 0x432259
push 0
call fcn.0045b76d
add esp, 4
mov edi, eax
mov dword [ebp - 0x14], edi
cmp edi, 0
je 0x43224f
push dword [ebp - 0x14]
push 0
call sub.KERNEL32.dll_GlobalAlloc
mov dword [ebp - 0x1c], eax
cmp eax, 0
je 0x43224f
push dword [ebp - 0x14]
push dword [ebp - 0x1c]
push 0
call fcn.0045b581
add esp, 0xc
push dword [ebp - 0x10]
push 0x100
call sub.KERNEL32.dll_GetTempPathA
cmp eax, 0
je 0x432247
mov edi, dword [ebp - 0x10]
push edi
push 0
push 0x541aa7
push edi
call sub.KERNEL32.dll_GetTempFileNameA
cmp eax, 0
je 0x432247
push 0x541aa4
push dword [ebp - 0x10]
call sub.CRTDLL.DLL_fopen
add esp, 8
mov dword [ebp - 0x20], eax
cmp eax, 0
je 0x432247
push dword [ebp - 0x20]
push dword [ebp - 0x14]
push 1
push dword [ebp - 0x1c]
call sub.CRTDLL.DLL_fwrite
add esp, 0x10
push dword [ebp - 0x20]
call sub.CRTDLL.DLL_fclose
add esp, 4
push dword [ebp - 0x14]
push dword [ebp - 0x10]
call fcn.0047f8b8
add esp, 8
push dword [ebp - 0x10]
call sub.KERNEL32.dll_DeleteFileA
push dword [ebp - 0x1c]
call sub.KERNEL32.dll_GlobalFree
push 0
call fcn.0045b65c
add esp, 4
cmp dword [0x4a4bf0], 0
je 0x432296
push 0x4a14f4
call fcn.00474e05
add esp, 4
push 0x4a40b4
call fcn.00474e05
add esp, 4
push 0x4a14f4
call fcn.0047483a
add esp, 4
push 0x4a40b4
call fcn.0047483a
add esp, 4
call fcn.004114b4
jmp 0x432ddc
call fcn.004114b4
push str.eXPG
call fcn.00470c6e
add esp, 4
cmp byte [0x4e98f8], 0
je 0x4322c4
cmp byte [0x4ebb04], 0
je 0x4322d1
push 0x4e9954
call fcn.00470c6e
add esp, 4
push 0
call fcn.00470c50
add esp, 4
jmp 0x432ddc
call fcn.00431653
jmp 0x432ddc
movzx edx, byte [0x4b78a2]
mov dword [ebp - 0x10], edx
mov edi, dword [ebp - 0x10]
cmp edi, 0x46
je 0x43232b
cmp edi, 0x49
je 0x4325e5
jg 0x432312
cmp dword [ebp - 0x10], 0x42
je 0x43232b
jmp 0x432633
mov edi, dword [ebp - 0x10]
cmp edi, 0x4f
je 0x43232b
jl 0x432633
cmp dword [ebp - 0x10], 0x53
je 0x43232b
jmp 0x432633
mov byte [ebp - 0x6d], 0
cmp byte [0x4b78a2], 0x46
jne 0x432378
call fcn.004114e8
mov edx, eax
cmp dl, 0
jne 0x43236e
lea edi, [ebp - 0x6d]
push edi
call fcn.0041272a
add esp, 4
push 0x2e
lea edi, [ebp - 0x6d]
push edi
call sub.CRTDLL.DLL_strrchr
add esp, 8
mov dword [ebp - 0x74], eax
cmp eax, 0
je 0x432378
mov edi, dword [ebp - 0x74]
mov byte [edi], 0
jmp 0x432378
call fcn.004114b4
jmp 0x432ddc
mov word [ebp - 0x1c], 1
mov word [ebp - 0x16], 0
mov word [ebp - 0x12], 0
mov word [ebp - 0x1a], 7
movzx edi, word [0x4bf284]
mov word [ebp - 0x18], di
movzx edi, word [0x4bf28c]
mov word [ebp - 0x14], di
call fcn.004114e8
mov edx, eax
cmp dl, 0
jne 0x432482
call fcn.004120f4
mov word [ebp - 0x1c], ax
call fcn.004114e8
mov edx, eax
cmp dl, 0
jne 0x432482
movzx edi, word [0x4bf284]
sub edi, 1
movsx edi, di
push edi
push 0
call fcn.00413c61
add esp, 8
mov word [ebp - 0x12], ax
call fcn.004114e8
mov edx, eax
cmp dl, 0
jne 0x432482
movzx edi, word [0x4bf28c]
sub edi, 1
movsx edi, di
push edi
push 0
call fcn.00413c61
add esp, 8
mov word [ebp - 0x16], ax
call fcn.004114e8
mov edx, eax
cmp dl, 0
jne 0x432482
push 9
push 1
call fcn.00413c61
add esp, 8
mov word [ebp - 0x1a], ax
call fcn.004114e8
mov edx, eax
cmp dl, 0
jne 0x432482
movzx edi, word [0x4bf284]
movsx edi, di
push edi
push 1
call fcn.00413c61
add esp, 8
mov word [ebp - 0x18], ax
call fcn.004114e8
mov edx, eax
cmp dl, 0
jne 0x432482
movzx edi, word [0x4bf28c]
movsx edi, di
push edi
push 1
call fcn.00413c61
add esp, 8
mov word [ebp - 0x14], ax
call fcn.004114b4
cmp word [ebp - 0x1a], 7
je 0x432500
mov di, word [ebp - 0x18]
mov word [ebp - 0x70], di
mov di, word [ebp - 0x14]
mov word [ebp - 0x72], di
lea edi, [ebp - 0x72]
push edi
lea edi, [ebp - 0x70]
push edi
movsx edi, word [ebp - 0x1a]
push edi
call fcn.00440f11
add esp, 0xc
movsx edi, word [ebp - 0x12]
movsx esi, word [ebp - 0x70]
sub edi, esi
mov word [ebp - 0x12], di
movsx edi, word [ebp - 0x12]
cmp edi, 0
jge 0x4324d7
mov di, word [ebp - 0x18]
add di, word [ebp - 0x12]
mov word [ebp - 0x18], di
mov word [ebp - 0x12], 0
movsx edi, word [ebp - 0x16]
movsx esi, word [ebp - 0x72]
sub edi, esi
mov word [ebp - 0x16], di
movsx edi, word [ebp - 0x16]
cmp edi, 0
jge 0x432500
mov di, word [ebp - 0x14]
add di, word [ebp - 0x16]
mov word [ebp - 0x14], di
mov word [ebp - 0x16], 0
movsx edi, word [ebp - 0x12]
movsx esi, word [ebp - 0x18]
add edi, esi
movzx esi, word [0x4bf284]
cmp edi, esi
jle 0x432526
movzx edi, word [0x4bf284]
movsx esi, word [ebp - 0x12]
sub edi, esi
mov word [ebp - 0x18], di
movsx edi, word [ebp - 0x16]
movsx esi, word [ebp - 0x14]
add edi, esi
movzx esi, word [0x4bf28c]
cmp edi, esi
jle 0x43254c
movzx edi, word [0x4bf28c]
movsx esi, word [ebp - 0x14]
sub edi, esi
mov word [ebp - 0x14], di
cmp byte [0x4b78a2], 0x42
jne 0x432582
push 0
movsx edi, word [ebp - 0x1a]
push edi
movsx edi, word [ebp - 0x14]
push edi
movsx edi, word [ebp - 0x18]
push edi
movsx edi, word [ebp - 0x16]
push edi
movsx edi, word [ebp - 0x12]
push edi
movsx edi, word [ebp - 0x1c]
push edi
call fcn.00433b3c
add esp, 0x1c
jmp 0x432ddc
cmp byte [0x4b78a2], 0x4f
jne 0x4325bb
push 0x4bf6b4
movsx edi, word [ebp - 0x1a]
push edi
movsx edi, word [ebp - 0x14]
push edi
movsx edi, word [ebp - 0x18]
push edi
movsx edi, word [ebp - 0x16]
push edi
movsx edi, word [ebp - 0x12]
push edi
movsx edi, word [ebp - 0x1c]
push edi
call fcn.00433b3c
add esp, 0x1c
jmp 0x432ddc
movsx edi, word [ebp - 0x14]
push edi
movsx edi, word [ebp - 0x18]
push edi
movsx edi, word [ebp - 0x16]
push edi
movsx edi, word [ebp - 0x12]
push edi
movsx edi, word [ebp - 0x1c]
push edi
lea edi, [ebp - 0x6d]
push edi
call fcn.0043389e
add esp, 0x18
jmp 0x432ddc
call fcn.004114e8
mov edx, eax
cmp dl, 0
jne 0x432ddc
call fcn.004120f4
mov word [ebp - 0x12], ax
call fcn.004114e8
mov edx, eax
cmp dl, 0
jne 0x432ddc
call fcn.004120f4
mov word [ebp - 0x14], ax
call fcn.004114b4
movsx edi, word [ebp - 0x14]
push edi
movsx edi, word [ebp - 0x12]
push edi
call fcn.00433c7a
add esp, 8
jmp 0x432ddc
call fcn.00431653
jmp 0x432ddc
movzx edx, byte [0x4b78a2]
mov dword [ebp - 0x14], edx
mov edi, dword [ebp - 0x14]
cmp edi, 0x49
je 0x432778
jg 0x432664
cmp dword [ebp - 0x14], 0x44
je 0x432705
jmp 0x4327c1
mov edi, dword [ebp - 0x14]
cmp edi, 0x52
je 0x432769
cmp edi, 0x53
je 0x432787
cmp edi, 0x56
je 0x432683
jmp 0x4327c1
mov word [ebp - 0x16], 0
call fcn.004114e8
mov edx, eax
cmp dl, 0
jne 0x4326a5
call fcn.00411c91
mov edi, eax
mov word [ebp - 0x16], di
call fcn.004114b4
push str.eXIV
call fcn.00470c6e
add esp, 4
cmp word [ebp - 0x16], 0
jne 0x4326d2
push str.EA_uniTFTs_V1.6_Rev.A_TP_simulation
push str._s_with_PC_mouse_as_touch_simulation
push 0x4b68a0
call fcn.00491c0d
add esp, 0xc
jmp 0x4326e9
push str.EA_uniTFTs_V1.6_Rev.A_TP_simulation
push str._s_with_PC_mouse_as_touch_simulation__no_real_PLC_functionality_possible
push 0x4b68a0
call fcn.00491c0d
add esp, 0xc
push 0x4b68a0
call fcn.00470c6e
add esp, 4
push 0
call fcn.00470c50
add esp, 4
jmp 0x432ddc
mov dword [ebp - 0x18], 0
call fcn.004114b4
push str.eXID
call fcn.00470c6e
add esp, 4
push 2
push 0x4bf284
call fcn.00470c09
add esp, 8
push 2
push 0x4bf28c
call fcn.00470c09
add esp, 8
push 0x10
call fcn.00470c50
add esp, 4
movzx edx, byte [0x4b5522]
push edx
call fcn.00470c50
add esp, 4
push 4
lea edi, [ebp - 0x18]
push edi
call fcn.00470c09
add esp, 8
jmp 0x432ddc
call fcn.004114b4
call fcn.00433e64
jmp 0x432ddc
call fcn.004114b4
call fcn.00433eca
jmp 0x432ddc
mov dword [ebp - 0x18], 0
call fcn.004114b4
push str.eXIS
call fcn.00470c6e
add esp, 4
push 4
lea edi, [ebp - 0x18]
push edi
call fcn.00470c09
add esp, 8
push 4
lea edi, [ebp - 0x18]
push edi
call fcn.00470c09
add esp, 8
jmp 0x432ddc
call fcn.00431653
jmp 0x432ddc
movzx edx, byte [0x4b78a2]
mov dword [ebp - 0x18], edx
mov edi, dword [ebp - 0x18]
cmp edi, 0x41
je 0x4327e7
jl 0x43283b
cmp dword [ebp - 0x18], 0x55
je 0x4327e7
jmp 0x43283b
push 0
push 0x800
push 0x4b68a0
call fcn.00412d2d
add esp, 0xc
mov edi, eax
mov word [ebp - 0x1a], di
call fcn.004114b4
cmp byte [0x4b78a2], 0x55
jne 0x432818
mov dword [ebp - 0x20], 1
jmp 0x43281f
mov dword [ebp - 0x20], 0
movzx edi, word [ebp - 0x20]
push edi
movzx edi, word [ebp - 0x1a]
push edi
push 0x4b68a0
call fcn.00470ca3
add esp, 0xc
jmp 0x432ddc
call fcn.00431653
jmp 0x432ddc
movzx edx, byte [0x4b78a2]
mov dword [ebp - 0x1c], edx
mov edi, dword [ebp - 0x1c]
cmp edi, 0x41
je 0x432868
jl 0x4328f2
cmp dword [ebp - 0x1c], 0x55
je 0x432868
jmp 0x4328f2
push 0
push 0x800
push 0x4b68a0
call fcn.00412d2d
add esp, 0xc
mov edi, eax
mov word [ebp - 0x1e], di
call fcn.004114b4
cmp word [0x4b68a0], 0x23
jne 0x4328ba
movzx edi, word [ebp - 0x1e]
sub edi, 1
cmp word [edi*2 + 0x4b68a0], 0xa
je 0x4328ba
movzx edi, word [ebp - 0x1e]
mov esi, edi
add esi, 1
mov word [ebp - 0x1e], si
mov word [edi*2 + 0x4b68a0], 0xa
cmp byte [0x4b78a2], 0x41
jne 0x4328d7
movzx edi, word [ebp - 0x1e]
push edi
push 0x4b68a0
call fcn.00433f69
add esp, 8
jmp 0x4328db
shl word [ebp - 0x1e], 1
movzx edi, word [ebp - 0x1e]
push edi
push 0x4b68a0
call fcn.00471078
add esp, 8
jmp 0x432ddc
call fcn.00431653
jmp 0x432ddc
movzx edx, byte [0x4b78a2]
mov dword [ebp - 0x20], edx
cmp dword [ebp - 0x20], 0x54
je 0x43290e
jmp 0x432936
call fcn.004114e8
mov edx, eax
cmp dl, 0
jne 0x432ddc
call fcn.00411c91
mov edi, eax
mov word [0x4c55d0], di
call fcn.004114b4
jmp 0x432ddc
call fcn.00431653
jmp 0x432ddc
movzx edx, byte [0x4b78a2]
mov dword [ebp - 0x24], edx
mov edi, dword [ebp - 0x24]
cmp edi, 0x42
je 0x43297b
jl 0x432c47
mov edi, dword [ebp - 0x24]
cmp edi, 0x50
je 0x432ac7
cmp edi, 0x52
je 0x432baa
cmp edi, 0x55
je 0x4329fb
jmp 0x432c47
mov word [ebp - 0x26], 0
call fcn.004114e8
mov edx, eax
cmp dl, 0
jne 0x43299d
call fcn.00411c91
mov edi, eax
mov word [ebp - 0x26], di
call fcn.004114b4
movzx edi, word [ebp - 0x26]
and edi, 0xff
or edi, 0x55aa4200
mov dword [0x4b52e4], edi
push 0xa
call sub.KERNEL32.dll_Sleep
mov edi, dword [0x4aec64]
cmp dword [0x4a1cac], edi
je 0x4329ec
push 0
push 0
mov edi, dword [0x4a1cac]
add edi, 0xdb
push edi
push dword [0x4aec44]
call fcn.00402839
add esp, 0x10
jmp 0x432ddc
mov dword [0x4a248c], 1
jmp 0x432ddc
push 0
push 0x800
push 0x4b68a0
call fcn.00412d2d
add esp, 0xc
push 0
push 0x4b68a0
call fcn.00433f69
add esp, 8
call fcn.00411a75
mov edi, eax
sub edi, 2
mov dword [ebp - 0x28], edi
call fcn.004114b4
call fcn.00430d9d
call fcn.00410c5b
mov edx, eax
and edx, 0xff
mov edi, edx
shl edi, 8
mov dword [ebp - 0x28], edi
call fcn.00410c5b
mov edx, eax
and edx, 0xff
or dword [ebp - 0x28], edx
call fcn.00410dd5
push str.Firmware_Update:
push 1
push 1
call fcn.00430a62
add esp, 0xc
push 0x4b68a0
push 0
push 0
call fcn.00430a62
add esp, 0xc
jmp 0x432a9c
push 0x115
push 0x4b68a0
call fcn.00410fc8
add esp, 8
push 0
call sub.KERNEL32.dll_Sleep
mov edi, dword [ebp - 0x28]
mov esi, edi
sub esi, 1
mov dword [ebp - 0x28], esi
cmp edi, 0
jne 0x432a83
push str.impossible_for_simulator_
push 2
push 1
call fcn.00430a62
add esp, 0xc
call fcn.00410dd5
jmp 0x432ddc
call fcn.004114e8
mov edx, eax
cmp dl, 0
jne 0x432ddc
call fcn.00411a75
mov dword [ebp - 0x28], eax
call fcn.004114e8
mov edx, eax
cmp dl, 0
jne 0x432ddc
call fcn.004120f4
mov word [ebp - 0x2a], ax
call fcn.004114e8
mov edx, eax
cmp dl, 0
jne 0x432ddc
call fcn.004120f4
mov word [ebp - 0x2c], ax
call fcn.004114e8
mov edx, eax
cmp dl, 0
jne 0x432ddc
call fcn.004120f4
mov word [ebp - 0x2e], ax
call fcn.004114b4
mov edi, dword [ebp - 0x28]
movzx edi, word [edi + 2]
cmp edi, 0x301
je 0x432b52
cmp edi, 0x401
je 0x432b52
cmp edi, 0x501
jne 0x432ddc
movsx edi, word [ebp - 0x2a]
push edi
push 0
push 0x4e64c0
call fcn.004420d2
add esp, 0xc
mov dword [ebp - 0x34], eax
cmp eax, 0
je 0x432ddc
mov edi, dword [ebp - 0x34]
mov esi, dword [ebp - 0x28]
mov dword [edi + 0x10], esi
push 0
push 0
push 7
push 0
push 0
movsx edi, word [ebp - 0x2e]
push edi
movsx edi, word [ebp - 0x2c]
push edi
push dword [ebp - 0x34]
call fcn.0043fe2f
add esp, 0x20
push dword [ebp - 0x34]
call fcn.0041b496
add esp, 4
jmp 0x432ddc
call fcn.004114e8
mov edx, eax
cmp dl, 0
jne 0x432ddc
call fcn.00411a75
mov dword [ebp - 0x28], eax
call fcn.004114e8
mov edx, eax
cmp dl, 0
jne 0x432ddc
call fcn.00411a75
mov dword [0x4be490], eax
call fcn.004114b4
push dword [0x4be490]
push dword [0x4be380]
push 0x4becc8
call fcn.0041ad09
add esp, 0xc
mov dword [0x4be380], eax
cmp eax, 0
je 0x432ddc
push dword [0x4be490]
push dword [ebp - 0x28]
push dword [0x4be380]
call sub.CRTDLL.DLL_memcpy
add esp, 0xc
push 1
push 0x5419f0
lea edi, [ebp - 0x30]
push edi
call fcn.00491c0d
add esp, 0xc
push 0
push 0
lea edi, [ebp - 0x30]
push edi
call fcn.004104b1
add esp, 0xc
jmp 0x432ddc
call fcn.00431653
jmp 0x432ddc
movzx edx, byte [0x4b78a2]
mov dword [ebp - 0x28], edx
cmp dword [ebp - 0x28], 0x50
je 0x432c66
jmp 0x432d81
call fcn.004114e8
mov edx, eax
cmp dl, 0
jne 0x432ddc
push 0
push 0x800
push 0x4b68a0
call fcn.00412d2d
add esp, 0xc
push 0
push 0x4b68a0
call fcn.00433f69
add esp, 8
call fcn.00411a75
mov dword [ebp - 0x30], eax
call fcn.004114b4
push 0x5419e8
push 0x4b68a0
call sub.CRTDLL.DLL_strcmp
add esp, 8
cmp eax, 0
je 0x432ddc
call fcn.00430d9d
push 0x4b68a0
push str.Error:_wrong_Uploadfile___EA__s__r_n
push 0
push 0
call fcn.00430a62
add esp, 0x10
push dword [ebp - 0x30]
push str.ingore_next__d_Bytes_r_n__0__
push 0
push 0
call fcn.00430a62
add esp, 0x10
push 0
call fcn.004211a4
add esp, 4
mov eax, dword [ebp - 0x30]
mov ecx, 0x64
xor edx, edx
div ecx
mov dword [ebp - 0x3c], eax
mov edi, dword [ebp - 0x3c]
mov dword [ebp - 0x38], edi
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x2c], 0
jmp 0x432d5e
call fcn.00410c5b
mov edi, dword [ebp - 0x2c]
add edi, 1
mov dword [ebp - 0x2c], edi
cmp edi, dword [ebp - 0x38]
jne 0x432d5e
mov edi, dword [ebp - 0x34]
add edi, 1
mov dword [ebp - 0x34], edi
push edi
push str._r_3d__
push 0
push 0
call fcn.00430a62
add esp, 0x10
push 0
call fcn.004211a4
add esp, 4
mov dword [ebp - 0x2c], 0
mov edi, dword [ebp - 0x30]
mov esi, edi
sub esi, 1
mov dword [ebp - 0x30], esi
cmp edi, 0
jne 0x432d1f
push 0x541994
push 0
push 0
call fcn.004308e4
add esp, 0xc
jmp 0x432ddc
call fcn.00431653
jmp 0x432ddc
movzx edx, byte [0x4b78a2]
mov dword [ebp - 0x2c], edx
mov edi, dword [ebp - 0x2c]
cmp edi, 0x54
je 0x432da1
cmp edi, 0x57
je 0x432da8
jmp 0x432dd0
call fcn.004114b4
jmp 0x432ddc
call fcn.004114e8
mov edx, eax
cmp dl, 0
jne 0x432ddc
call fcn.00411c91
mov edi, eax
mov word [ebp - 0x2e], di
call fcn.004114b4
movzx edi, word [ebp - 0x2e]
mov dword [0x4aea10], edi
jmp 0x432ddc
call fcn.00431653
jmp 0x432ddc
call fcn.00431653
pop edi
pop esi
pop ebx
leave
ret