Function at 0x6bcaa0
Capabilities:
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x2a0
push ebx
push esi
mov ebx, ecx
push edi
mov edi, dword [0x76cab0]
or ecx, 0xffffffff
xor eax, eax
lea edx, [ebp - 0x2a0]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
lea edx, [ebp - 0x2a0]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, dword [0x7925a4]
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, edi
mov edi, edx
mov edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
lea eax, [ebp - 0x14]
and ecx, 3
push eax
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [0x76cab0]
mov edi, dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
push 1
push 0
push ecx
push reloc.ijl15.dll_Ordinal_2
call edi
test eax, eax
jne 0x6bcba6
mov edx, dword [ebp - 0x14]
push edx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov ecx, dword [0x76cab0]
lea eax, [ebp - 0x10]
push eax
push 1
push 0
push ecx
push reloc.ijl15.dll_Ordinal_2
call edi
test eax, eax
jne 0x6bcba6
mov eax, 4
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 4], eax
mov dword [ebp - 8], eax
lea edx, [ebp - 8]
lea eax, [ebx + 0x3668]
mov esi, dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
push edx
push eax
lea eax, [ebp - 4]
push eax
push 0
push 0x792b4c
push ecx
call esi
test eax, eax
je 0x6bcb87
mov dword [ebx + 0x3668], 1
mov eax, dword [ebx + 0x3668]
xor edx, edx
test eax, eax
mov eax, dword [ebp - 0x10]
setne dl
push eax
mov dword [ebx + 0x3668], edx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x6bcbac
mov esi, dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
lea ecx, [ebp - 0x14]
lea edx, [ebp - 0x2a0]
push ecx
push 1
push 0
push edx
push reloc.ijl15.dll_Ordinal_2
call edi
test eax, eax
jne 0x6bd34d
mov eax, dword [ebp - 0x14]
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
lea ecx, [ebp - 0xc]
lea edx, [ebp - 0x2a0]
push ecx
push 1
push 0
push edx
push reloc.ijl15.dll_Ordinal_2
call edi
test eax, eax
jne 0x6bd390
mov eax, 4
mov edx, dword [ebp - 0xc]
mov dword [ebp - 4], eax
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
lea edi, [ebx + 0x36a4]
push eax
lea ecx, [ebp - 4]
push edi
push ecx
push 0
push str.isEffectOn
push edx
call esi
test eax, eax
je 0x6bcc23
mov dword [edi], 1
mov edx, dword [ebp - 0xc]
lea eax, [ebp - 8]
lea edi, [ebx + 0x36ac]
push eax
lea ecx, [ebp - 4]
push edi
push ecx
push 0
push str.isBgmOn
push edx
call esi
test eax, eax
je 0x6bcc49
mov dword [edi], 1
mov edx, dword [ebp - 0xc]
lea eax, [ebp - 8]
push eax
lea ecx, [ebp - 4]
push 0x766544
push ecx
push 0
push str.isSoundOn
push edx
call esi
test eax, eax
je 0x6bcc71
mov dword [0x766544], 1
lea eax, [ebp - 8]
lea ecx, [ebp - 0x18]
push eax
mov eax, dword [ebp - 0xc]
lea edx, [ebp - 4]
push ecx
push edx
push 0
push str.streamVolume
push eax
call esi
test eax, eax
je 0x6bcc95
mov dword [ebp - 0x18], 0x64
lea ecx, [ebp - 8]
lea edx, [ebp - 0x10]
push ecx
mov ecx, dword [ebp - 0xc]
lea eax, [ebp - 4]
push edx
push eax
push 0
push str.soundVolume
push ecx
call esi
test eax, eax
je 0x6bccb9
mov dword [ebp - 0x10], 0x64
mov ecx, dword [ebp - 0xc]
lea edx, [ebp - 8]
lea eax, [ebx + 0x36dc]
push edx
push eax
lea eax, [ebp - 4]
push eax
push 0
push str.m_bAutoOpenDetailWindowIfLowMemory
push ecx
call esi
test eax, eax
je 0x6bcce3
mov dword [ebx + 0x36dc], 1
mov eax, dword [ebx + 0x36a4]
xor edx, edx
test eax, eax
setne dl
mov dword [ebx + 0x36a4], edx
mov ecx, dword [0x766544]
xor eax, eax
test ecx, ecx
setne al
mov dword [0x766544], eax
mov edx, dword [edi]
mov eax, dword [ebp - 0x18]
xor ecx, ecx
test edx, edx
setne cl
mov dword [edi], ecx
push eax
mov dword [0x837a44], eax
call fcn.0041ba40
mov edx, dword [ebp - 0x10]
push edx
call fcn.0041ba90
mov eax, dword [ebp - 0x10]
push eax
call fcn.0041bad0
mov eax, dword [ebp - 0xc]
add esp, 0xc
lea ecx, [ebp - 8]
lea edi, [ebx + 0x1490]
push ecx
lea edx, [ebp - 4]
push edi
push edx
push 0
push str.m_monsterSnapOn_Skill
push eax
call esi
test eax, eax
je 0x6bcd5c
mov dword [edi], 1
cmp dword [edi], 0
je 0x6bcd67
mov dword [edi], 1
mov eax, dword [ebp - 0xc]
lea ecx, [ebp - 8]
lea edi, [ebx + 0x1494]
push ecx
lea edx, [ebp - 4]
push edi
push edx
push 0
push str.m_monsterSnapOn_NoSkill
push eax
call esi
test eax, eax
je 0x6bcd8d
mov dword [edi], 0
cmp dword [edi], 0
je 0x6bcd98
mov dword [edi], 1
mov eax, dword [ebp - 0xc]
lea ecx, [ebp - 8]
lea edi, [ebx + 0x1488]
push ecx
lea edx, [ebp - 4]
push edi
push edx
push 0
push str.m_isItemSnap
push eax
call esi
test eax, eax
je 0x6bcdbe
mov dword [edi], 0
cmp dword [edi], 0
je 0x6bcdc9
mov dword [edi], 1
mov eax, dword [ebp - 0xc]
lea ecx, [ebp - 8]
lea edi, [ebx + 0x147c]
push ecx
lea edx, [ebp - 4]
push edi
push edx
push 0
push str.m_isShowWhisperWnd
push eax
call esi
test eax, eax
je 0x6bcdef
mov dword [edi], 1
cmp dword [edi], 0
je 0x6bcdfa
mov dword [edi], 1
mov eax, dword [ebp - 0xc]
lea ecx, [ebp - 8]
lea edi, [ebx + 0x1484]
push ecx
lea edx, [ebp - 4]
push edi
push edx
push 0
push str.m_isShowWhisperWnd_Friend
push eax
call esi
test eax, eax
je 0x6bce20
mov dword [edi], 1
cmp dword [edi], 0
je 0x6bce2f
mov dword [ebx + 0x147c], 1
mov eax, dword [ebp - 0xc]
lea ecx, [ebp - 8]
lea edi, [ebx + 0x1480]
push ecx
lea edx, [ebp - 4]
push edi
push edx
push 0
push str.m_isPlayWhisperOpenSound
push eax
call esi
test eax, eax
je 0x6bce55
mov dword [edi], 1
cmp dword [edi], 0
je 0x6bce60
mov dword [edi], 1
mov eax, dword [ebx + 0x1494]
mov dword [ebx + 0x1b80], 0
test eax, eax
je 0x6bce7e
mov dword [ebx + 0x1b80], 1
mov eax, dword [ebp - 0xc]
lea ecx, [ebp - 8]
lea edi, [ebx + 0x36d4]
push ecx
lea edx, [ebp - 4]
push edi
push edx
push 0
push str.m_bMakeMissEffect
push eax
call esi
test eax, eax
je 0x6bcea6
mov dword [edi], 1
jmp 0x6bceb1
mov eax, dword [edi]
xor ecx, ecx
test eax, eax
setne cl
mov dword [edi], ecx
mov ecx, dword [ebp - 0xc]
lea edx, [ebp - 8]
push edx
lea eax, [ebp - 4]
push 0x83427c
push eax
push 0
push str.g_isFixedCamera
push ecx
call esi
test eax, eax
je 0x6bcedb
mov dword [0x83427c], 0
jmp 0x6bceed
mov eax, dword [0x83427c]
xor edx, edx
test eax, eax
setne dl
mov dword [0x83427c], edx
mov edx, dword [ebp - 0xc]
lea eax, [ebp - 8]
push eax
lea ecx, [ebp - 4]
push 0x78855c
push ecx
push 0
push str.g_outdoorViewLatitude
push edx
call esi
test eax, eax
je 0x6bcf15
mov dword [0x78855c], 0xc2340000
mov edx, dword [ebp - 0xc]
lea eax, [ebp - 8]
push eax
lea ecx, [ebp - 4]
push 0x788560
push ecx
push 0
push str.g_outdoorViewDistance
push edx
call esi
test eax, eax
je 0x6bcf3d
mov dword [0x788560], 0x43960000
mov edx, dword [ebp - 0xc]
lea eax, [ebp - 8]
push eax
lea ecx, [ebp - 4]
push 0x788554
push ecx
push 0
push str.g_indoorViewLatitude
push edx
call esi
test eax, eax
je 0x6bcf65
mov dword [0x788554], 0xc2340000
mov edx, dword [ebp - 0xc]
lea eax, [ebp - 8]
push eax
lea ecx, [ebp - 4]
push 0x788558
push ecx
push 0
push str.g_indoorViewDistance
push edx
call esi
test eax, eax
je 0x6bcf8d
mov dword [0x788558], 0x43960000
fld dword [0x788548]
fld dword [0x788554]
fcomp dword [0x746174]
fnstsw ax
test ah, 1
je 0x6bcfb2
mov dword [0x788554], 0xc25c0000
jmp 0x6bcfcf
fld dword [0x788554]
fcomp dword [0x746170]
fnstsw ax
test ah, 0x41
jne 0x6bcfcf
mov dword [0x788554], 0xc20c0000
fld dword [0x788558]
fcomp dword [0x788540]
fnstsw ax
test ah, 1
je 0x6bcfec
mov eax, dword [0x788540]
mov dword [0x788558], eax
fld dword [0x788558]
fcomp st(1)
fnstsw ax
test ah, 0x41
jne 0x6bd003
fstp dword [0x788558]
jmp 0x6bd005
fstp st(0)
fld dword [0x788544]
fld dword [0x78855c]
fcomp dword [0x74616c]
fnstsw ax
test ah, 1
je 0x6bd02a
mov dword [0x78855c], 0xc2820000
jmp 0x6bd047
fld dword [0x78855c]
fcomp dword [0x746168]
fnstsw ax
test ah, 0x41
jne 0x6bd047
mov dword [0x78855c], 0xc1c80000
fld dword [0x788560]
fcomp dword [0x788540]
fnstsw ax
test ah, 1
je 0x6bd066
mov ecx, dword [0x788540]
mov dword [0x788560], ecx
fld dword [0x788560]
fcomp st(1)
fnstsw ax
test ah, 0x41
jne 0x6bd07d
fstp dword [0x788560]
jmp 0x6bd07f
fstp st(0)
lea edx, [ebp - 8]
lea eax, [ebp - 0xa0]
push edx
mov edx, dword [ebp - 0xc]
lea ecx, [ebp - 4]
push eax
push ecx
push 0
push str.SKINNAME
push edx
mov dword [ebp - 4], 1
mov dword [ebp - 8], 0x80
call esi
test eax, eax
je 0x6bd0df
mov edi, str._Basic_Skin_
or ecx, 0xffffffff
xor eax, eax
lea edx, [ebp - 0xa0]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
xor edx, edx
rep movsb byte es:[edi], byte [esi]
mov esi, dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
jmp 0x6bd0e1
xor edx, edx
lea edi, [ebp - 0xa0]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, ecx
cmp edi, 0xfffffffd
mov dword [ebp - 0x1c], edi
jbe 0x6bd102
call fcn.0070103b
xor edx, edx
mov eax, dword [0x7d6538]
cmp eax, edx
je 0x6bd126
mov cl, byte [eax - 1]
test cl, cl
je 0x6bd126
cmp cl, 0xff
je 0x6bd126
cmp edi, edx
jne 0x6bd1a5
dec cl
mov byte [eax - 1], cl
jmp 0x6bd14d
cmp edi, edx
jne 0x6bd164
cmp eax, edx
je 0x6bd14d
mov cl, byte [eax - 1]
test cl, cl
je 0x6bd141
cmp cl, 0xff
je 0x6bd141
dec cl
mov byte [eax - 1], cl
jmp 0x6bd14d
dec eax
push eax
call fcn.006ffa16
add esp, 4
xor edx, edx
mov dword [0x7d6538], edx
mov dword [0x7d653c], edx
mov dword [0x7d6540], edx
jmp 0x6bd1e6
mov ecx, dword [0x7d6540]
cmp ecx, 0x1f
ja 0x6bd173
cmp ecx, edi
jae 0x6bd1b5
cmp eax, edx
je 0x6bd194
mov cl, byte [eax - 1]
test cl, cl
je 0x6bd18a
cmp cl, 0xff
je 0x6bd18a
dec cl
mov byte [eax - 1], cl
jmp 0x6bd194
dec eax
push eax
call fcn.006ffa16
add esp, 4
xor eax, eax
mov dword [0x7d6538], eax
mov dword [0x7d653c], eax
mov dword [0x7d6540], eax
push edi
mov ecx, 0x7d6534
call fcn.00421da0
mov eax, dword [0x7d6538]
mov edx, dword [ebp - 0x1c]
mov edi, eax
mov ecx, edx
lea esi, [ebp - 0xa0]
mov eax, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [0x7d6538]
mov esi, dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
mov dword [0x7d653c], edx
mov byte [ecx + edx], 0
mov ecx, dword [ebp - 0xc]
lea edx, [ebp - 8]
lea edi, [ebx + 0x387c]
push edx
lea eax, [ebp - 4]
push edi
push eax
push 0
push str.onHoUserAI
push ecx
call esi
test eax, eax
je 0x6bd20c
mov dword [edi], 0
mov eax, dword [edi]
xor edx, edx
test eax, eax
setne dl
mov dword [edi], edx
mov edx, dword [ebp - 0xc]
lea eax, [ebp - 8]
lea edi, [ebx + 0x390c]
push eax
lea ecx, [ebp - 4]
push edi
push ecx
push 0
push str.onMerUserAI
push edx
call esi
test eax, eax
je 0x6bd23d
mov dword [edi], 0
mov ecx, dword [edi]
xor eax, eax
test ecx, ecx
setne al
mov dword [edi], eax
mov eax, dword [ebp - 0xc]
lea ecx, [ebp - 8]
lea edi, [ebx + 0x3674]
push ecx
lea edx, [ebp - 4]
push edi
push edx
push 0
push str.m_isNoCtrl
push eax
call esi
test eax, eax
je 0x6bd26e
mov dword [edi], 0
cmp dword [edi], 0
je 0x6bd279
mov dword [edi], 1
mov eax, dword [ebp - 0xc]
lea ecx, [ebp - 8]
lea edi, [ebx + 0xa50]
push ecx
lea edx, [ebp - 4]
push edi
push edx
push 0
push str.m_isSimpleSkillWnd
push eax
call esi
test eax, eax
je 0x6bd29f
mov dword [edi], 0
cmp dword [edi], 0
je 0x6bd2aa
mov dword [edi], 1
mov eax, dword [ebp - 0xc]
lea ecx, [ebp - 8]
lea edi, [ebx + 0xa54]
push ecx
lea edx, [ebp - 4]
push edi
push edx
push 0
push str.m_bShowSkillDescript
push eax
call esi
test eax, eax
je 0x6bd2d0
mov dword [edi], 0
cmp dword [edi], 0
je 0x6bd2db
mov dword [edi], 1
mov eax, dword [ebp - 0xc]
lea ecx, [ebp - 8]
push ecx
lea edx, [ebp - 4]
push 0x7d67de
push edx
push 0
push str.m_bCanSetChatMode
push eax
call esi
test eax, eax
je 0x6bd302
mov byte [0x7d67de], 1
jmp 0x6bd312
mov al, byte [0x7d67de]
test al, al
jne 0x6bd312
mov byte [0x7d67dc], 1
mov eax, dword [ebp - 0xc]
lea ecx, [ebp - 8]
lea edi, [ebx + 0x3b78]
push ecx
lea edx, [ebp - 4]
push edi
push edx
push 0
push str.m_bLockMouse
push eax
call esi
test eax, eax
je 0x6bd335
mov byte [edi], 0
mov ecx, dword [ebp - 0xc]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov ecx, ebx
call fcn.006f5210
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, 1
push 0x64
mov dword [ebx + 0x3668], esi
mov dword [ebx + 0x36a4], esi
mov dword [ebx + 0x36ac], esi
call fcn.0041ba90
push 0x64
call fcn.0041bad0
push 0x64
mov dword [0x766544], esi
call fcn.0041ba40
add esp, 0xc
xor eax, eax
mov dword [ebx + 0x390c], eax
mov dword [ebx + 0x387c], eax
mov ecx, ebx
call fcn.006f5210
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret