Function at 0x436460
Capabilities:
Read .ini file

Disassembly:
sub esp, 0x734
push esi
mov esi, ecx
mov ax, word [esi + 0x148]
mov word [esp + 0xc], ax
mov al, byte [esi + 0xa0]
test al, al
je 0x43648d
mov al, byte [esi + 0x14c]
shl al, 1
mov byte [esp + 6], al
jmp 0x436497
mov cl, byte [esi + 0x14c]
mov byte [esp + 6], cl
mov edx, dword [esi + 8]
push ebx
push edi
mov ecx, 0x100
mov al, byte [edx + 0xc2]
lea edi, [esp + 0x40]
mov byte [esp + 0x1c], al
xor eax, eax
rep stosd dword es:[edi], eax
mov al, byte [esi + 0x150]
mov byte [esp + 0x11], 0
dec eax
je 0x4364e7
dec eax
je 0x4364c8
xor ebx, ebx
jmp 0x4364ee
mov ebx, dword [esi + 0x16c]
xor ecx, ecx
mov cx, word [esi + 0x14a]
shr ebx, 1
imul ebx, ecx
shr ebx, 0x10
and ebx, 0xff
jmp 0x4364ee
mov bx, word [esi + 0x14a]
xor eax, eax
xor cl, cl
mov ax, word [esi + 0x14a]
mov byte [esp + 0xf], cl
cmp eax, 1
jle 0x436513
inc cl
mov edx, 1
shl edx, cl
cmp edx, eax
jl 0x436502
mov byte [esp + 0xf], cl
mov al, byte [esi + 0xf2]
not al
shr al, 3
and al, 1
mov byte [esp + 0x12], al
mov al, byte [esp + 0x744]
test al, al
jne 0x436536
mov byte [esp + 0x10], 0
jmp 0x43654b
mov al, byte [esp + 0x754]
cmp al, 0xff
jne 0x436547
mov al, byte [esi + 0x838]
mov byte [esp + 0x10], al
mov eax, dword [0x4e5bb8]
mov edi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
push eax
push 0
push str.SpecialHLF
push str.Scan
call edi
mov cl, byte [esi + 0x34]
mov dl, byte [esi + 0x16d]
mov byte [esp + 0x13], al
mov al, byte [esi + 0x16c]
mov byte [esp + 0x40], cl
mov ecx, dword [esp + 0x14]
mov byte [esp + 0x42], al
mov ax, cx
mov byte [esp + 0x44], cl
mov cl, byte [esp + 0xe]
shr ax, 8
mov byte [esp + 0x45], cl
mov ecx, esi
mov byte [esp + 0x41], dl
mov word [esp + 0x18], ax
mov byte [esp + 0x43], al
call fcn.00449d00
mov dl, byte [esi + 0x18d]
mov cl, byte [esi + 0x18e]
mov byte [esp + 0x4e], al
mov byte [esp + 0x50], dl
xor eax, eax
xor edx, edx
mov al, byte [esi + 0x18f]
mov dl, byte [esi + 0x191]
mov byte [esp + 0x51], al
mov al, byte [esi + 0x190]
mov byte [esp + 0x52], cl
mov cl, byte [esi + 0x192]
mov byte [esp + 0x53], dl
mov edx, dword [esi + 8]
mov byte [esp + 0x54], al
mov byte [esp + 0x55], cl
mov ecx, dword [edx + 0xc4]
mov dl, byte [esi + 0x14d]
test ecx, ecx
mov cl, byte [esp + 0xf]
mov byte [esp + 0x61], dl
setne al
mov byte [esp + 0x5f], al
mov al, byte [esi + 0x171]
mov byte [esp + 0x62], al
mov al, byte [esi + 0x14a]
mov byte [esp + 0x60], cl
xor ecx, ecx
xor edx, edx
mov byte [esp + 0x66], al
mov al, byte [esp + 0x13]
mov dl, byte [esi + 0x14b]
mov cl, bh
mov byte [esp + 0x64], bl
test al, al
mov byte [esp + 0x63], cl
mov byte [esp + 0x65], dl
jne 0x436653
mov cl, byte [esi + 0x13c]
mov byte [esp + 0x70], cl
jmp 0x43665d
mov dl, byte [esi + 0x850]
mov byte [esp + 0x70], dl
mov al, byte [esi + 0x2a98]
mov cl, byte [esi + 0x151]
mov byte [esp + 0x71], al
mov al, byte [esi + 0x170]
mov dl, al
mov byte [esp + 0x72], cl
and dl, 1
mov byte [esp + 0x74], 0
test al, 2
mov byte [esp + 0x73], dl
je 0x43668e
mov byte [esp + 0x74], 1
test al, 4
je 0x436697
mov byte [esp + 0x74], 2
mov ecx, dword [esi + 0x120]
mov al, byte [esp + 0x750]
push str.Samsung
push ecx
mov byte [esp + 0x7f], al
mov byte [esp + 0x80], 0
call dword [sym.imp.MSVCRT.dll__stricmp]
add esp, 8
mov ebx, 3
test eax, eax
jne 0x4366e2
cmp byte [esi + 0x152], 0xa
jne 0x4366e2
cmp byte [esi + 0x156], 1
sete dl
inc edx
mov byte [esp + 0x78], dl
jmp 0x43670d
mov eax, dword [esi + 0x15c]
test al, 0x18
je 0x4366fb
test byte [esi + 0x110], 8
je 0x4366fb
mov byte [esp + 0x78], bl
jmp 0x43670d
test al, 0x40
je 0x43670d
test byte [esi + 0x110], 8
je 0x43670d
mov byte [esp + 0x78], 4
mov ecx, esi
call fcn.004693e0
mov byte [esp + 0x7a], al
mov al, byte [esi + 0x24]
xor cl, cl
cmp al, 0x10
je 0x436725
cmp al, 0x13
jne 0x436735
test byte [esi + 0x110], 0x10
je 0x436735
mov cl, 1
jmp 0x4367b7
cmp al, 0x10
je 0x43673d
cmp al, 0x13
jne 0x43674a
test byte [esi + 0x110], 0x20
je 0x43674a
mov cl, 2
jmp 0x4367b7
cmp al, 0x10
je 0x436752
cmp al, 0x13
jne 0x43675f
test byte [esi + 0x110], 0x80
je 0x43675f
mov cl, 4
jmp 0x4367b7
cmp al, 0x10
je 0x436767
cmp al, 0x13
jne 0x436774
test byte [esi + 0x110], 0x40
je 0x436774
mov cl, bl
jmp 0x4367b7
cmp al, 0x10
je 0x43677c
cmp al, 0x13
jne 0x43678b
mov edx, dword [esi + 0x110]
test dh, 1
je 0x43678b
mov cl, bl
jmp 0x4367b7
cmp al, 0x10
je 0x436793
cmp al, 0x13
jne 0x4367a2
mov edx, dword [esi + 0x110]
test dh, 2
je 0x4367a2
mov cl, 4
jmp 0x4367b7
cmp al, 0x10
je 0x4367aa
cmp al, 0x13
jne 0x4367b7
mov eax, dword [esi + 0x110]
test ah, 0x60
je 0x4367b7
mov cl, 5
mov byte [esp + 0x7b], cl
mov cl, byte [esi + 0x156]
xor al, al
cmp cl, 1
jne 0x4367e7
mov edx, dword [esi + 0x110]
test dl, 0xc0
jne 0x4367d8
test dh, 0x63
je 0x4367e7
mov edx, dword [esi + 0x348c]
mov al, 1
cmp edx, 1
jne 0x4367e7
mov al, 2
mov byte [esp + 0x7c], al
xor al, al
cmp cl, 1
jne 0x43685c
mov ecx, dword [esi + 0x110]
test cl, 0xc0
jne 0x43680b
test ch, 0x60
jne 0x43680b
test ch, 3
je 0x43680d
mov al, bl
jmp 0x43680d
mov al, 0x13
mov cx, word [esi + 0x26]
cmp cx, 0xe001
je 0x436849
cmp cx, 0xe101
je 0x436849
cmp cx, 0xe102
je 0x436849
cmp cx, 0xe103
je 0x436849
cmp cx, 0xcf02
je 0x436849
cmp cx, 0xe302
je 0x436849
cmp cx, 0xe304
je 0x436849
cmp cx, 0xe802
jne 0x43685c
mov eax, dword [0x4e5bb8]
push eax
push ebx
push str.DqsDelay
push str.Debug
call edi
lea edi, [esi + 0x124]
push str.H27UCG8T2MYR
mov ecx, edi
mov byte [esp + 0x82], al
call sub.MFC42.DLL_CString::Find_1
cmp eax, 0xffffffff
je 0x436881
mov byte [esp + 0x7f], 1
jmp 0x4368d7
push str.H27UCG8T2ATR
mov ecx, edi
call sub.MFC42.DLL_CString::Find_1
cmp eax, 0xffffffff
jne 0x4368d2
push str.H27UAG8T2CTR
mov ecx, edi
call sub.MFC42.DLL_CString::Find_1
cmp eax, 0xffffffff
jne 0x4368d2
push str.H27UBG8T2CTR
mov ecx, edi
call sub.MFC42.DLL_CString::Find_1
cmp eax, 0xffffffff
je 0x4368ba
mov byte [esp + 0x7f], bl
jmp 0x4368d7
push str.H27UBG8T2BTR
mov ecx, edi
call sub.MFC42.DLL_CString::Find_1
cmp eax, 0xffffffff
je 0x4368d7
mov byte [esp + 0x7f], 4
jmp 0x4368d7
mov byte [esp + 0x7f], 2
mov cl, byte [esp + 0x12]
mov bl, byte [esi + 0x12e]
mov dl, byte [esp + 0x18]
mov al, byte [esp + 0x14]
mov byte [esp + 0x80], cl
mov cl, byte [esi + 0xee]
cmp bl, 4
mov byte [esp + 0x81], dl
mov byte [esp + 0x83], cl
mov ecx, esi
sete dl
mov byte [esp + 0x82], al
mov byte [esp + 0x84], dl
call fcn.00451df0
mov edx, dword [esp + 0x74c]
mov cl, byte [esp + 0x10]
test edx, edx
mov byte [esp + 0x8c], al
mov byte [esp + 0x8f], cl
mov cl, byte [esi + 0x34]
mov byte [esp + 0x8d], 0
setne al
xor edx, edx
mov byte [esp + 0x8e], al
xor bl, bl
xor al, al
mov dword [esp + 0xb1], edx
mov byte [esp + 0x93], 1
test cl, cl
mov byte [esp + 0x14], bl
mov dword [esp + 0xb5], edx
jbe 0x4369c1
mov edi, dword [esp + 0x1c]
and edi, 0xff
mov ecx, dword [esp + 0x14]
and ecx, 0xff
mov eax, ecx
cdq
idiv edi
inc al
cmp al, 8
mov byte [esp + 0x1c], al
ja 0x4369c1
mov edx, dword [esp + 0x1c]
mov cl, byte [ecx + 0x4bb114]
and edx, 0xff
or byte [esp + edx + 0xb0], cl
mov cl, byte [esi + 0x34]
lea edx, [esp + edx + 0xb0]
inc bl
cmp bl, cl
mov byte [esp + 0x14], bl
jb 0x43697d
mov ecx, dword [esi + 0x34ac]
mov byte [esp + 0xb0], al
mov al, byte [esi + 0x110]
mov byte [esp + 0x9b], 0xf
test ecx, ecx
setne dl
test al, 8
mov byte [esp + 0x9a], dl
je 0x436a1d
lea eax, [esp + 0x20]
mov ecx, esi
push eax
call fcn.00463ff0
xor eax, eax
mov ecx, 0x10
xor edx, edx
mov dl, byte [esp + eax + 0x21]
mov byte [esp + eax + 0xc0], dl
mov dl, byte [esp + eax + 0x20]
mov byte [esp + eax + 0xc1], dl
add eax, 2
dec ecx
jne 0x4369ff
or eax, 0xffffffff
mov dword [esp + 0x110], eax
mov dword [esp + 0x114], eax
mov dword [esp + 0x118], eax
mov dword [esp + 0x11c], eax
mov al, byte [esi + 0xf2]
test al, 8
je 0x436a8f
mov dl, byte [esp + 0xe]
xor al, al
test dl, dl
mov byte [esp + 0x18], 0
jbe 0x436aa9
xor edi, edi
xor ecx, ecx
mov di, word [esi + 0xf4]
mov ebx, 1
shl ebx, cl
test edi, ebx
je 0x436a86
mov ebx, dword [esp + 0x18]
and ebx, 0xff
mov byte [esp + ebx + 0x110], al
mov bl, byte [esp + 0x18]
inc bl
mov byte [esp + 0x18], bl
inc al
inc ecx
cmp al, dl
jb 0x436a60
jmp 0x436aa9
mov dl, byte [esp + 0xe]
xor al, al
test dl, dl
jbe 0x436aa9
lea ecx, [esp + 0x110]
mov byte [ecx], al
inc al
inc ecx
cmp al, dl
jb 0x436aa0
mov edx, dword [esp + 0x748]
mov eax, dword [esp + 0x744]
lea ecx, [esp + 0x440]
push ecx
push edx
push eax
mov ecx, esi
call fcn.00436000
xor ecx, ecx
mov edx, 0x180
xor ebx, ebx
mov bl, byte [esp + ecx + 0x441]
mov byte [esp + ecx + 0x140], bl
mov bl, byte [esp + ecx + 0x440]
mov byte [esp + ecx + 0x141], bl
add ecx, 2
dec edx
jne 0x436acf
xor ecx, ecx
mov byte [esp + 0x82], al
mov cl, ah
mov eax, dword [esi + 8]
mov byte [esp + 0x81], cl
mov cl, byte [eax + 0xa2]
mov edx, dword [eax + 0xdc]
cmp cl, 0xff
je 0x436b36
test edx, edx
je 0x436b4a
xor edx, edx
mov edi, ecx
mov dl, byte [eax + 0xe2]
and edi, 0xff
mov dl, byte [edx + edi*4 + 0x4bb100]
jmp 0x436b4e
test edx, edx
je 0x436b4a
xor edx, edx
mov dl, byte [eax + 0xe2]
mov dl, byte [edx + 0x4bb104]
jmp 0x436b4e
mov dl, byte [esp + 0x11]
pop edi
cmp cl, 1
pop ebx
jne 0x436b5b
add dl, byte [eax + 0xe3]
xor cx, cx
mov cl, dl
mov dl, byte [eax + 0xd8]
mov byte [esp + 0x98], dl
mov dl, byte [eax + 0xa2]
cmp dl, 1
jne 0x436b82
mov byte [esp + 0x99], 1
jmp 0x436b8f
mov al, byte [eax + 0xdc]
mov byte [esp + 0x99], al
mov dl, byte [esi + 0x14c]
mov byte [esp + 0x9d], cl
cmp dl, 8
mov byte [esp + 0x9a], 1
sete dl
xor eax, eax
dec edx
mov al, ch
and edx, 0xfffffffe
lea ecx, [esp + 0x38]
add edx, 8
push ecx
mov ecx, esi
mov byte [esp + 0x9f], dl
mov byte [esp + 0xa0], al
call fcn.004450f0
mov eax, 1
pop esi
add esp, 0x734
ret 0x14