Function at 0x10008130
Capabilities:
Check http status code
Get common file path
Get program files directory
Parse pe header
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x10093a16
mov eax, dword fs:[0]
push eax
sub esp, 0x258
mov eax, dword [0x100cd8ec]
xor eax, esp
mov dword [esp + 0x254], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x100cd8ec]
xor eax, esp
push eax
lea eax, [esp + 0x26c]
mov dword fs:[0], eax
mov edi, ecx
xor esi, esi
xor ebx, ebx
lea ecx, [esp + 0x1c]
mov dword [esp + 0x34], edi
mov dword [esp + 0x18], ebx
mov dword [esp + 0x50], esi
call fcn.1006b6d0
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], esi
lea ecx, [esp + 0x38]
mov dword [esp + 0x274], esi
call fcn.10004140
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], esi
lea ecx, [esp + 0x44]
mov byte [esp + 0x274], 1
call fcn.10004140
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], esi
lea ecx, [esp + 0x110]
mov byte [esp + 0x274], 2
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_void_]
lea ecx, [esp + 0x12c]
mov byte [esp + 0x274], 3
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_void_]
lea ecx, [esp + 0x148]
mov byte [esp + 0x274], 4
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_void_]
mov ebp, dword [esp + 0x27c]
test ebp, ebp
mov byte [esp + 0x274], 5
jne 0x10008432
mov eax, edi
mov ecx, dword [eax + 4]
add ecx, 0x1c
push ecx
lea ecx, [esp + 0x114]
lea esi, [ebx + 0x1f]
call dword [sym.imp.MSVCP80.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::operator_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
mov eax, dword [esp + 0x3c]
mov ecx, dword [eax + 4]
lea edi, [eax + 4]
lea edx, [esp + 0x110]
push edx
push ecx
push eax
lea ecx, [esp + 0x44]
call fcn.10004160
push 1
lea ecx, [esp + 0x3c]
mov ebp, eax
call fcn.10004200
push 3
mov dword [edi], ebp
mov eax, dword [ebp + 4]
push ebx
lea edx, [esp + 0x8c]
push edx
lea ecx, [esp + 0x11c]
mov dword [eax], ebp
call dword [sym.imp.MSVCP80.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char_____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::substr_unsigned_int__unsigned_int_]
cmp dword [eax + 0x18], 0x10
mov byte [esp + 0x274], 6
jb 0x1000828a
mov eax, dword [eax + 4]
jmp 0x1000828d
add eax, 4
push eax
lea ecx, [esp + 0xf8]
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
mov eax, dword [esp + 0x48]
mov edx, dword [eax + 4]
lea ebp, [eax + 4]
lea ecx, [esp + 0xf4]
push ecx
push edx
push eax
lea ecx, [esp + 0x50]
mov byte [esp + 0x280], 7
call fcn.10004160
push 1
lea ecx, [esp + 0x48]
mov edi, eax
call fcn.10004200
mov dword [ebp], edi
mov eax, dword [edi + 4]
lea ecx, [esp + 0xf4]
mov dword [eax], edi
mov byte [esp + 0x274], 6
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
lea ecx, [esp + 0x84]
mov byte [esp + 0x274], 5
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov edi, dword [esp + 0x34]
cmp dword [esp + 0x40], 0
je 0x10009bd1
mov eax, esi
and eax, 1
mov dword [esp + 0x64], eax
mov eax, esi
and eax, 2
mov dword [esp + 0x5c], eax
mov eax, esi
and eax, 0x10
mov dword [esp + 0x54], eax
mov eax, esi
and eax, 4
and esi, 8
mov dword [esp + 0x60], esi
mov esi, dword [sym.imp.MSVCP80.dll_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char_____cdecl_std::operator_char__struct_std::char_traits_char___class_std::allocator_char___class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___char_const__]
mov dword [esp + 0x58], eax
nop
mov eax, dword [esp + 0x3c]
mov ebp, dword [eax]
cmp ebp, eax
jne 0x10008350
call dword [sym.imp.MSVCR80.dll__invalid_parameter_noinfo]
add ebp, 8
push ebp
lea ecx, [esp + 0x114]
call dword [sym.imp.MSVCP80.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::operator_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
mov eax, dword [esp + 0x3c]
mov ebp, dword [eax]
cmp ebp, eax
jne 0x10008377
call dword [sym.imp.MSVCR80.dll__invalid_parameter_noinfo]
cmp ebp, dword [esp + 0x3c]
je 0x1000839f
mov eax, dword [ebp + 4]
mov ecx, dword [ebp]
mov dword [eax], ecx
mov edx, dword [ebp]
mov eax, dword [ebp + 4]
lea ecx, [ebp + 8]
mov dword [edx + 4], eax
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
push ebp
call sub.MSVCR80.dll_void___cdecl_operator_delete_void__
add esp, 4
sub dword [esp + 0x40], 1
push 0x1009fc09
lea ecx, [esp + 0x130]
call dword [0x1009f138]
cmp dword [esp + 0x4c], 0
je 0x10008417
mov eax, dword [esp + 0x48]
mov ebp, dword [eax]
cmp ebp, eax
jne 0x100083c8
call dword [sym.imp.MSVCR80.dll__invalid_parameter_noinfo]
add ebp, 8
push ebp
lea ecx, [esp + 0x130]
call dword [sym.imp.MSVCP80.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::operator_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
mov eax, dword [esp + 0x48]
mov ebp, dword [eax]
cmp ebp, eax
jne 0x100083ef
call dword [sym.imp.MSVCR80.dll__invalid_parameter_noinfo]
cmp ebp, dword [esp + 0x48]
je 0x10008417
mov eax, dword [ebp + 4]
mov ecx, dword [ebp]
mov dword [eax], ecx
mov edx, dword [ebp]
mov eax, dword [ebp + 4]
lea ecx, [ebp + 8]
mov dword [edx + 4], eax
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
push ebp
call sub.MSVCR80.dll_void___cdecl_operator_delete_void__
add esp, 4
sub dword [esp + 0x4c], 1
cmp dword [esp + 0x27c], 0
jne 0x10008770
lea ecx, [esp + 0x12c]
push ecx
jmp 0x10008778
cmp ebp, 0x64
jne 0x10008451
lea eax, [esp + 0x44]
push eax
lea ecx, [esp + 0x3c]
push ecx
lea esi, [ebp - 0x46]
call fcn.1006bf60
add esp, 8
jmp 0x10008303
cmp ebp, 0xc8
jne 0x10008473
mov ecx, dword [edi + 0x98]
lea edx, [esp + 0x38]
push edx
mov esi, 8
call fcn.1000c6a0
jmp 0x10008303
cmp ebp, 0x578
jne 0x100084aa
mov eax, dword [edi + 4]
add eax, 0x1c
push eax
lea ecx, [esp + 0x114]
mov esi, 0x1e
call dword [sym.imp.MSVCP80.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::operator_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
lea ecx, [esp + 0x110]
push ecx
lea ecx, [esp + 0x3c]
call fcn.10004360
jmp 0x10008303
cmp ebp, 0x190
jne 0x1000859a
mov ecx, dword [edi + 0x90]
mov esi, 8
mov dword [esp + 0x14], esi
call fcn.10077ca0
test eax, eax
jne 0x10008303
mov ecx, dword [edi + 0x90]
call fcn.10077cf0
mov ebp, eax
test ebp, ebp
je 0x10008303
lea ecx, [esp + 0xf4]
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_void_]
mov edx, dword [ebp]
add edx, 0x100
push edx
lea ecx, [esp + 0xf8]
mov byte [esp + 0x278], 8
call dword [0x1009f138]
cmp dword [esp + 0x10c], 0x10
mov eax, dword [esp + 0xf8]
jae 0x1000852b
lea eax, [esp + 0xf8]
push eax
mov eax, dword [esp + 0x38]
mov ecx, dword [eax]
push str._CertificateDB__in___s_
push ecx
call fcn.10077b60
mov eax, dword [esp + 0x48]
mov ecx, dword [eax + 4]
mov ebp, dword [ebp + 4]
add esp, 0xc
lea edi, [eax + 4]
lea edx, [esp + 0xf4]
push edx
push ecx
push eax
lea ecx, [esp + 0x44]
call fcn.10004160
push 1
lea ecx, [esp + 0x3c]
mov esi, eax
call fcn.10004200
mov dword [edi], esi
mov eax, dword [esi + 4]
lea ecx, [esp + 0xf4]
mov dword [eax], esi
mov byte [esp + 0x274], 5
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
test ebp, ebp
jne 0x100084e7
mov esi, dword [esp + 0x14]
jmp 0x100082ff
cmp ebp, 0xbb8
jne 0x1000865e
mov ecx, dword [edi + 0x94]
mov esi, 8
call fcn.1007cbf0
test eax, eax
jne 0x10008303
mov ecx, dword [edi + 0x94]
call fcn.1007cc40
mov ebp, eax
test ebp, ebp
je 0x10008303
lea ecx, [esp + 0xf4]
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_void_]
mov edx, dword [ebp]
add edx, 0x100
push edx
lea ecx, [esp + 0xf8]
mov byte [esp + 0x278], 9
call dword [0x1009f138]
cmp dword [esp + 0x10c], 0x10
mov eax, dword [esp + 0xf8]
jae 0x10008617
lea eax, [esp + 0xf8]
push eax
mov eax, dword [edi]
push str._CertificateDB__in___s_
push eax
call fcn.10077b60
mov ebp, dword [ebp + 4]
add esp, 0xc
lea ecx, [esp + 0xf4]
push ecx
lea ecx, [esp + 0x3c]
call fcn.10004360
lea ecx, [esp + 0xf4]
mov byte [esp + 0x274], 5
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
test ebp, ebp
jne 0x100085d3
jmp 0x10008303
cmp ebp, 0xc1c
jne 0x1000868a
push 0x1009fc09
lea ecx, [esp + 0xf8]
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
lea edx, [esp + 0xf4]
mov byte [esp + 0x274], 0xa
push edx
jmp 0x100086b4
cmp ebp, 0x3e8
jne 0x100086d7
push 0x1009fc09
lea ecx, [esp + 0xf8]
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
lea eax, [esp + 0xf4]
mov byte [esp + 0x274], 0xb
push eax
lea ecx, [esp + 0x3c]
call fcn.10004360
lea ecx, [esp + 0xf4]
mov byte [esp + 0x274], 5
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
jmp 0x10008303
cmp ebp, 0x44c
je 0x100086fd
cmp ebp, 0x4b0
je 0x100086fd
mov ecx, dword [edi]
push ebp
push str._CertificateDB__Not_support_media___d_
push ecx
call fcn.10077b60
add esp, 0xc
jmp 0x10008303
push 0x1009fc09
lea ecx, [esp + 0xf8]
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
lea edx, [esp + 0xf4]
push edx
lea ecx, [esp + 0x3c]
mov byte [esp + 0x278], 0xc
call fcn.10004360
lea ecx, [esp + 0xf4]
mov byte [esp + 0x274], 5
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
cmp dword [edi + 0x70], 0
jbe 0x10008303
cmp ebp, 0x4b0
jne 0x10008303
mov eax, dword [edi]
push str._CertificateDB__Mobisign_media_is_only_one__
push eax
call fcn.10077b60
add esp, 8
mov dword [esp + 0x50], 0xffffcc65
jmp 0x10009bd1
lea edx, [esp + 0x110]
push edx
lea ecx, [esp + 0x14c]
call dword [sym.imp.MSVCP80.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::operator_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
mov ecx, dword [esp + 0x20]
mov eax, dword [ecx]
mov dword [ecx], ecx
mov ecx, dword [esp + 0x20]
mov dword [ecx + 4], ecx
cmp eax, dword [esp + 0x20]
mov dword [esp + 0x24], 0
je 0x100087b5
mov ebp, dword [eax]
push eax
call sub.MSVCR80.dll_void___cdecl_operator_delete_void__
add esp, 4
cmp ebp, dword [esp + 0x20]
mov eax, ebp
jne 0x100087a2
cmp dword [esp + 0x64], 0
je 0x10008860
push 0x4c
call sub.MSVCR80.dll_void____cdecl_operator_new_unsigned_int_
mov ebp, eax
add esp, 4
mov dword [esp + 0x14], ebp
test ebp, ebp
mov byte [esp + 0x274], 0xd
je 0x10008820
call fcn.1006a9b0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x34], esp
push eax
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
mov eax, dword [edi + 4]
sub esp, 0x1c
add eax, 0x38
mov ecx, esp
mov dword [esp + 0x60], esp
push eax
mov byte [esp + 0x2b0], 0xe
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
mov ecx, ebp
mov byte [esp + 0x2ac], 0xd
call fcn.1001ca50
jmp 0x10008822
xor eax, eax
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x20]
mov edx, dword [eax + 4]
lea edi, [eax + 4]
lea ecx, [esp + 0x14]
push ecx
push edx
push eax
lea ecx, [esp + 0x28]
mov byte [esp + 0x280], 5
call fcn.10010d50
push 1
lea ecx, [esp + 0x20]
mov ebp, eax
call fcn.10007990
mov dword [edi], ebp
mov eax, dword [ebp + 4]
mov edi, dword [esp + 0x34]
mov dword [eax], ebp
cmp dword [esp + 0x5c], 0
je 0x10008984
push 0x50
call sub.MSVCR80.dll_void____cdecl_operator_new_unsigned_int_
mov ebp, eax
add esp, 4
mov dword [esp + 0x28], ebp
test ebp, ebp
mov byte [esp + 0x274], 0xf
je 0x10008919
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x30], esp
push 0x100a0604
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
mov byte [esp + 0x290], 0x10
call fcn.1006a9b0
push eax
lea eax, [esp + 0x130]
push eax
lea ecx, [esp + 0xa8]
push ecx
call esi
sub esp, 0x10
mov edx, esp
mov dword [esp + 0x68], esp
push str.NPKI
push eax
or ebx, 1
push edx
mov byte [esp + 0x2b8], 0x11
mov dword [esp + 0x5c], ebx
call esi
mov eax, dword [edi + 4]
sub esp, 0x10
add eax, 0xc4
mov ecx, esp
mov dword [esp + 0x80], esp
push eax
mov dword [esp + 0x2cc], 0x12
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
mov ecx, ebp
mov byte [esp + 0x2c8], 0x13
call fcn.1001ac40
mov ebp, eax
jmp 0x1000891b
xor ebp, ebp
test bl, 1
mov dword [esp + 0x14], ebp
mov dword [esp + 0x274], 5
je 0x1000893f
lea ecx, [esp + 0x84]
and ebx, 0xfffffffe
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
cmp dword [esp + 0x27c], 0
jne 0x10008952
push 1
mov ecx, ebp
call fcn.10018870
mov eax, dword [esp + 0x20]
mov edx, dword [eax + 4]
lea edi, [eax + 4]
lea ecx, [esp + 0x14]
push ecx
push edx
push eax
lea ecx, [esp + 0x28]
call fcn.10010d50
push 1
lea ecx, [esp + 0x20]
mov ebp, eax
call fcn.10007990
mov dword [edi], ebp
mov eax, dword [ebp + 4]
mov edi, dword [esp + 0x34]
mov dword [eax], ebp
cmp dword [esp + 0x54], 0
je 0x10008aa5
push 0x50
call sub.MSVCR80.dll_void____cdecl_operator_new_unsigned_int_
mov ebp, eax
add esp, 4
mov dword [esp + 0x2c], ebp
test ebp, ebp
mov byte [esp + 0x274], 0x15
je 0x10008a3a
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x4c], esp
push 0x100a0604
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
mov byte [esp + 0x290], 0x16
call fcn.1006a9b0
push eax
lea eax, [esp + 0x130]
push eax
lea ecx, [esp + 0xa8]
push ecx
call esi
sub esp, 0x10
mov edx, esp
mov dword [esp + 0x60], esp
push str.MPKI
push eax
or ebx, 2
push edx
mov byte [esp + 0x2b8], 0x17
mov dword [esp + 0x5c], ebx
call esi
mov eax, dword [edi + 4]
sub esp, 0x10
add eax, 0xc4
mov ecx, esp
mov dword [esp + 0x68], esp
push eax
mov dword [esp + 0x2cc], 0x18
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
mov ecx, ebp
mov byte [esp + 0x2c8], 0x19
call fcn.100188b0
mov ebp, eax
jmp 0x10008a3c
xor ebp, ebp
test bl, 2
mov dword [esp + 0x14], ebp
mov dword [esp + 0x274], 5
je 0x10008a60
lea ecx, [esp + 0x84]
and ebx, 0xfffffffd
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
cmp dword [esp + 0x27c], 0
jne 0x10008a73
push 1
mov ecx, ebp
call fcn.10018870
mov eax, dword [esp + 0x20]
mov edx, dword [eax + 4]
lea edi, [eax + 4]
lea ecx, [esp + 0x14]
push ecx
push edx
push eax
lea ecx, [esp + 0x28]
call fcn.10010d50
push 1
lea ecx, [esp + 0x20]
mov ebp, eax
call fcn.10007990
mov dword [edi], ebp
mov eax, dword [ebp + 4]
mov edi, dword [esp + 0x34]
mov dword [eax], ebp
cmp dword [esp + 0x58], 0
je 0x10008b90
push 0x4c
call sub.MSVCR80.dll_void____cdecl_operator_new_unsigned_int_
mov ebp, eax
add esp, 4
mov dword [esp + 0x2c], ebp
test ebp, ebp
mov byte [esp + 0x274], 0x1b
je 0x10008b38
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x4c], esp
push 0x100a0604
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
mov byte [esp + 0x290], 0x1c
call fcn.1006a9b0
push eax
lea eax, [esp + 0x168]
push eax
lea ecx, [esp + 0xa8]
push ecx
call esi
sub esp, 0x10
mov edx, esp
mov dword [esp + 0x60], esp
push str.GPKI
push eax
or ebx, 4
push edx
mov byte [esp + 0x2b8], 0x1d
mov dword [esp + 0x5c], ebx
call esi
add esp, 0xc
mov ecx, ebp
mov dword [esp + 0x2ac], 0x1e
call fcn.10017350
jmp 0x10008b3a
xor eax, eax
test bl, 4
mov dword [esp + 0x14], eax
mov dword [esp + 0x274], 5
je 0x10008b5e
lea ecx, [esp + 0x84]
and ebx, 0xfffffffb
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov eax, dword [esp + 0x20]
mov edx, dword [eax + 4]
lea edi, [eax + 4]
lea ecx, [esp + 0x14]
push ecx
push edx
push eax
lea ecx, [esp + 0x28]
call fcn.10010d50
push 1
lea ecx, [esp + 0x20]
mov ebp, eax
call fcn.10007990
mov dword [edi], ebp
mov eax, dword [ebp + 4]
mov edi, dword [esp + 0x34]
mov dword [eax], ebp
cmp dword [esp + 0x60], 0
je 0x10009a23
cmp dword [esp + 0x27c], 0
jne 0x10009388
push 0x68
call sub.MSVCR80.dll_void____cdecl_operator_new_unsigned_int_
mov ebp, eax
add esp, 4
mov dword [esp + 0x2c], ebp
test ebp, ebp
mov byte [esp + 0x274], 0x20
je 0x10008c50
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x4c], esp
push 0x100a0604
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x60], esp
push str.softforum
mov byte [esp + 0x2b0], 0x21
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
mov byte [esp + 0x2ac], 0x22
call fcn.1006a9b0
push eax
mov eax, dword [edi + 4]
add eax, 0x38
push eax
lea ecx, [esp + 0xc4]
push ecx
call esi
sub esp, 0x10
mov edx, esp
mov dword [esp + 0x68], esp
push str.user
push eax
or ebx, 8
push edx
mov byte [esp + 0x2d4], 0x23
mov dword [esp + 0x78], ebx
call esi
add esp, 0xc
mov ecx, ebp
mov dword [esp + 0x2c8], 0x24
call fcn.1001be40
jmp 0x10008c52
xor eax, eax
test bl, 8
mov dword [esp + 0x14], eax
mov dword [esp + 0x274], 5
je 0x10008c76
lea ecx, [esp + 0x84]
and ebx, 0xfffffff7
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov eax, dword [esp + 0x20]
mov edx, dword [eax + 4]
lea edi, [eax + 4]
lea ecx, [esp + 0x14]
push ecx
push edx
push eax
lea ecx, [esp + 0x28]
call fcn.10010d50
push 1
lea ecx, [esp + 0x20]
mov ebp, eax
call fcn.10007990
mov dword [edi], ebp
mov eax, dword [ebp + 4]
mov dword [eax], ebp
push 0x103
lea eax, [esp + 0x169]
push 0
push eax
mov byte [esp + 0x170], 0
call sub.MSVCR80.dll_memset
add esp, 0xc
push 0
push 0x26
lea ecx, [esp + 0x16c]
push ecx
push 0
call dword [sym.imp.SHELL32.dll_SHGetSpecialFolderPathA]
push 0x68
call sub.MSVCR80.dll_void____cdecl_operator_new_unsigned_int_
mov ebp, eax
add esp, 4
mov dword [esp + 0x2c], ebp
test ebp, ebp
mov byte [esp + 0x274], 0x26
je 0x10008e3e
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x4c], esp
push 0x100a0604
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x60], esp
push str.softforum
mov byte [esp + 0x2b0], 0x27
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
lea edx, [esp + 0x19c]
push edx
lea ecx, [esp + 0xa4]
mov byte [esp + 0x2b0], 0x28
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
mov edi, eax
or ebx, 0x10
mov byte [esp + 0x2ac], 0x29
mov dword [esp + 0x50], ebx
call fcn.1006a9b0
push eax
lea eax, [esp + 0xdc]
push edi
push eax
call esi
push str.Softforum
push eax
lea ecx, [esp + 0x108]
or ebx, 0x20
push ecx
mov dword [esp + 0x2c4], 0x2a
mov dword [esp + 0x68], ebx
call esi
mov edi, eax
or ebx, 0x40
mov dword [esp + 0x2c4], 0x2b
mov dword [esp + 0x68], ebx
call fcn.1006a9b0
push eax
lea edx, [esp + 0x12c]
push edi
push edx
call esi
push 0x100a05c0
push eax
lea eax, [esp + 0x158]
or ebx, 0x80
push eax
mov dword [esp + 0x2dc], 0x2c
mov dword [esp + 0x80], ebx
call esi
mov edi, eax
or ebx, 0x100
mov dword [esp + 0x2dc], 0x2d
mov dword [esp + 0x80], ebx
call fcn.1006a9b0
push eax
lea ecx, [esp + 0xf0]
push edi
push ecx
call esi
add esp, 0x20
mov edx, esp
mov dword [esp + 0x68], esp
push str.user
push eax
or ebx, 0x200
push edx
mov dword [esp + 0x2d4], 0x2e
mov dword [esp + 0x78], ebx
call esi
add esp, 0xc
mov ecx, ebp
mov dword [esp + 0x2c8], 0x34
call fcn.1001be40
jmp 0x10008e40
xor eax, eax
test ebx, 0x200
mov dword [esp + 0x14], eax
mov dword [esp + 0x274], 0x39
je 0x10008e6e
and ebx, 0xfffffdff
lea ecx, [esp + 0x84]
mov dword [esp + 0x18], ebx
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
test ebx, 0x100
mov dword [esp + 0x274], 0x38
je 0x10008e98
and ebx, 0xfffffeff
lea ecx, [esp + 0xf4]
mov dword [esp + 0x18], ebx
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
test bl, bl
mov dword [esp + 0x274], 0x37
jns 0x10008ebe
and ebx, 0xffffff7f
lea ecx, [esp + 0xd8]
mov dword [esp + 0x18], ebx
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
test bl, 0x40
mov dword [esp + 0x274], 0x36
je 0x10008ee2
and ebx, 0xffffffbf
lea ecx, [esp + 0xbc]
mov dword [esp + 0x18], ebx
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
test bl, 0x20
mov dword [esp + 0x274], 0x35
je 0x10008f06
and ebx, 0xffffffdf
lea ecx, [esp + 0xa0]
mov dword [esp + 0x18], ebx
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
test bl, 0x10
mov dword [esp + 0x274], 5
je 0x10008f23
lea ecx, [esp + 0x68]
and ebx, 0xffffffef
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov eax, dword [esp + 0x20]
mov edx, dword [eax + 4]
lea edi, [eax + 4]
lea ecx, [esp + 0x14]
push ecx
push edx
push eax
lea ecx, [esp + 0x28]
call fcn.10010d50
push 1
lea ecx, [esp + 0x20]
mov ebp, eax
call fcn.10007990
mov dword [edi], ebp
mov eax, dword [ebp + 4]
push 0x104
mov dword [eax], ebp
lea eax, [esp + 0x168]
push 0
push eax
call sub.MSVCR80.dll_memset
lea ecx, [esp + 0x170]
push str.C:ProgramData
push ecx
call dword [sym.imp.MSVCR80.dll_sprintf]
push 0x68
call sub.MSVCR80.dll_void____cdecl_operator_new_unsigned_int_
mov ebp, eax
add esp, 0x18
mov dword [esp + 0x2c], ebp
test ebp, ebp
mov byte [esp + 0x274], 0x3b
je 0x10009095
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x4c], esp
push 0x100a0604
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x60], esp
push str.KEPCO
mov byte [esp + 0x2b0], 0x3c
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
lea edx, [esp + 0x19c]
push edx
lea ecx, [esp + 0x114]
mov byte [esp + 0x2b0], 0x3d
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
mov edi, eax
or ebx, 0x400
mov byte [esp + 0x2ac], 0x3e
mov dword [esp + 0x50], ebx
call fcn.1006a9b0
push eax
lea eax, [esp + 0xf8]
push edi
push eax
call esi
push str.KEPCO
push eax
lea ecx, [esp + 0xec]
or ebx, 0x800
push ecx
mov dword [esp + 0x2c4], 0x3f
mov dword [esp + 0x68], ebx
call esi
mov edi, eax
or ebx, 0x1000
mov dword [esp + 0x2c4], 0x40
mov dword [esp + 0x68], ebx
call fcn.1006a9b0
push eax
lea edx, [esp + 0xbc]
push edi
push edx
call esi
add esp, 8
mov ecx, esp
mov dword [esp + 0x68], esp
push str.user
push eax
or ebx, 0x2000
push ecx
mov dword [esp + 0x2d4], 0x41
mov dword [esp + 0x78], ebx
call esi
add esp, 0xc
mov ecx, ebp
mov dword [esp + 0x2c8], 0x45
call fcn.1001be40
jmp 0x10009097
xor eax, eax
test ebx, 0x2000
mov dword [esp + 0x14], eax
mov dword [esp + 0x274], 0x48
je 0x100090c2
and ebx, 0xffffdfff
lea ecx, [esp + 0x68]
mov dword [esp + 0x18], ebx
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
test ebx, 0x1000
mov dword [esp + 0x274], 0x47
je 0x100090ec
and ebx, 0xffffefff
lea ecx, [esp + 0xa0]
mov dword [esp + 0x18], ebx
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
test ebx, 0x800
mov dword [esp + 0x274], 0x46
je 0x10009116
and ebx, 0xfffff7ff
lea ecx, [esp + 0xbc]
mov dword [esp + 0x18], ebx
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
test ebx, 0x400
mov dword [esp + 0x274], 5
je 0x1000913c
lea ecx, [esp + 0xd8]
and ebx, 0xfffffbff
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov eax, dword [esp + 0x20]
mov ecx, dword [eax + 4]
lea edi, [eax + 4]
lea edx, [esp + 0x14]
push edx
push ecx
push eax
lea ecx, [esp + 0x28]
call fcn.10010d50
push 1
lea ecx, [esp + 0x20]
mov ebp, eax
call fcn.10007990
push 0x104
mov dword [edi], ebp
mov eax, dword [ebp + 4]
lea edx, [esp + 0x168]
push 0
push edx
mov dword [eax], ebp
call sub.MSVCR80.dll_memset
lea eax, [esp + 0x170]
push str.C:ProgramData
push eax
call dword [sym.imp.MSVCR80.dll_sprintf]
push 0x68
call sub.MSVCR80.dll_void____cdecl_operator_new_unsigned_int_
mov ebp, eax
add esp, 0x18
mov dword [esp + 0x2c], ebp
test ebp, ebp
mov byte [esp + 0x274], 0x4a
je 0x100092ae
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x4c], esp
push 0x100a0604
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x60], esp
push str.KDBCA
mov byte [esp + 0x2b0], 0x4b
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
lea ecx, [esp + 0x19c]
push ecx
lea ecx, [esp + 0x114]
mov byte [esp + 0x2b0], 0x4c
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
mov edi, eax
or ebx, 0x4000
mov byte [esp + 0x2ac], 0x4d
mov dword [esp + 0x50], ebx
call fcn.1006a9b0
push eax
lea edx, [esp + 0xf8]
push edi
push edx
call esi
push str.KDBCA
push eax
lea eax, [esp + 0xec]
or ebx, 0x8000
push eax
mov dword [esp + 0x2c4], 0x4e
mov dword [esp + 0x68], ebx
call esi
mov edi, eax
or ebx, 0x10000
mov dword [esp + 0x2c4], 0x4f
mov dword [esp + 0x68], ebx
call fcn.1006a9b0
push eax
lea ecx, [esp + 0xbc]
push edi
push ecx
call esi
add esp, 8
mov edx, esp
mov dword [esp + 0x68], esp
push str.user
push eax
or ebx, 0x20000
push edx
mov dword [esp + 0x2d4], 0x50
mov dword [esp + 0x78], ebx
call esi
add esp, 0xc
mov ecx, ebp
mov dword [esp + 0x2c8], 0x54
call fcn.1001be40
jmp 0x100092b0
xor eax, eax
test ebx, 0x20000
mov dword [esp + 0x14], eax
mov dword [esp + 0x274], 0x57
je 0x100092db
and ebx, 0xfffdffff
lea ecx, [esp + 0x68]
mov dword [esp + 0x18], ebx
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
test ebx, 0x10000
mov dword [esp + 0x274], 0x56
je 0x10009305
and ebx, 0xfffeffff
lea ecx, [esp + 0xa0]
mov dword [esp + 0x18], ebx
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
test ebx, 0x8000
mov dword [esp + 0x274], 0x55
je 0x1000932f
and ebx, 0xffff7fff
lea ecx, [esp + 0xbc]
mov dword [esp + 0x18], ebx
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
test ebx, 0x4000
mov dword [esp + 0x274], 5
je 0x10009355
lea ecx, [esp + 0xd8]
and ebx, 0xffffbfff
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov eax, dword [esp + 0x20]
mov edx, dword [eax + 4]
lea ebp, [eax + 4]
lea ecx, [esp + 0x14]
push ecx
push edx
push eax
lea ecx, [esp + 0x28]
call fcn.10010d50
push 1
lea ecx, [esp + 0x20]
mov edi, eax
call fcn.10007990
mov dword [ebp], edi
mov eax, dword [edi + 4]
mov dword [eax], edi
mov edi, dword [esp + 0x34]
cmp dword [esp + 0x27c], 0x64
jne 0x100097e5
push 0x68
call sub.MSVCR80.dll_void____cdecl_operator_new_unsigned_int_
mov edi, eax
add esp, 4
mov dword [esp + 0x2c], edi
test edi, edi
mov byte [esp + 0x274], 0x59
je 0x10009441
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x4c], esp
push 0x100a0604
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x60], esp
push str.softforum
mov byte [esp + 0x2b0], 0x5a
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
mov byte [esp + 0x2ac], 0x5b
call fcn.1006a9b0
push eax
lea eax, [esp + 0x14c]
push eax
lea ecx, [esp + 0xa8]
push ecx
call esi
sub esp, 0x10
mov edx, esp
mov dword [esp + 0x68], esp
push str.xecureca
push eax
or ebx, 0x40000
push edx
mov byte [esp + 0x2d4], 0x5c
mov dword [esp + 0x78], ebx
call esi
add esp, 0xc
mov ecx, edi
mov dword [esp + 0x2c8], 0x5d
call fcn.1001be40
jmp 0x10009443
xor eax, eax
test ebx, 0x40000
mov dword [esp + 0x14], eax
mov dword [esp + 0x274], 5
je 0x1000946a
lea ecx, [esp + 0x68]
and ebx, 0xfffbffff
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov eax, dword [esp + 0x20]
mov edx, dword [eax + 4]
lea ebp, [eax + 4]
lea ecx, [esp + 0x14]
push ecx
push edx
push eax
lea ecx, [esp + 0x28]
call fcn.10010d50
push 1
lea ecx, [esp + 0x20]
mov edi, eax
call fcn.10007990
mov dword [ebp], edi
mov eax, dword [edi + 4]
push 0x68
mov dword [eax], edi
call sub.MSVCR80.dll_void____cdecl_operator_new_unsigned_int_
mov edi, eax
add esp, 4
mov dword [esp + 0x2c], edi
test edi, edi
mov byte [esp + 0x274], 0x5f
je 0x10009591
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x4c], esp
push 0x100a0604
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x60], esp
push str.KEPCO
mov byte [esp + 0x2b0], 0x60
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
mov byte [esp + 0x2ac], 0x61
call fcn.1006a9b0
push eax
lea eax, [esp + 0x14c]
push eax
lea ecx, [esp + 0xfc]
push ecx
call esi
push str.KEPCO
push eax
lea edx, [esp + 0xec]
or ebx, 0x80000
push edx
mov byte [esp + 0x2c4], 0x62
mov dword [esp + 0x68], ebx
call esi
mov ebp, eax
or ebx, 0x100000
mov dword [esp + 0x2c4], 0x63
mov dword [esp + 0x68], ebx
call fcn.1006a9b0
push eax
lea eax, [esp + 0xbc]
push ebp
push eax
call esi
add esp, 8
mov ecx, esp
mov dword [esp + 0x68], esp
push str.user
push eax
or ebx, 0x200000
push ecx
mov dword [esp + 0x2d4], 0x64
mov dword [esp + 0x78], ebx
call esi
add esp, 0xc
mov ecx, edi
mov dword [esp + 0x2c8], 0x67
call fcn.1001be40
jmp 0x10009593
xor eax, eax
test ebx, 0x200000
mov dword [esp + 0x14], eax
mov dword [esp + 0x274], 0x69
je 0x100095be
and ebx, 0xffdfffff
lea ecx, [esp + 0x68]
mov dword [esp + 0x18], ebx
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
test ebx, 0x100000
mov dword [esp + 0x274], 0x68
je 0x100095e8
and ebx, 0xffefffff
lea ecx, [esp + 0xa0]
mov dword [esp + 0x18], ebx
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
test ebx, 0x80000
mov dword [esp + 0x274], 5
je 0x1000960e
lea ecx, [esp + 0xbc]
and ebx, 0xfff7ffff
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov eax, dword [esp + 0x20]
mov ecx, dword [eax + 4]
lea ebp, [eax + 4]
lea edx, [esp + 0x14]
push edx
push ecx
push eax
lea ecx, [esp + 0x28]
call fcn.10010d50
push 1
lea ecx, [esp + 0x20]
mov edi, eax
call fcn.10007990
mov dword [ebp], edi
mov eax, dword [edi + 4]
push 0x68
mov dword [eax], edi
call sub.MSVCR80.dll_void____cdecl_operator_new_unsigned_int_
mov edi, eax
add esp, 4
mov dword [esp + 0x2c], edi
test edi, edi
mov byte [esp + 0x274], 0x6b
je 0x10009735
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x4c], esp
push 0x100a0604
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x60], esp
push str.KDBCA
mov byte [esp + 0x2b0], 0x6c
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
mov byte [esp + 0x2ac], 0x6d
call fcn.1006a9b0
push eax
lea edx, [esp + 0x14c]
push edx
lea eax, [esp + 0xfc]
push eax
call esi
push str.KDBCA
push eax
lea ecx, [esp + 0xec]
or ebx, 0x400000
push ecx
mov byte [esp + 0x2c4], 0x6e
mov dword [esp + 0x68], ebx
call esi
mov ebp, eax
or ebx, 0x800000
mov dword [esp + 0x2c4], 0x6f
mov dword [esp + 0x68], ebx
call fcn.1006a9b0
push eax
lea edx, [esp + 0xbc]
push ebp
push edx
call esi
add esp, 8
mov ecx, esp
mov dword [esp + 0x68], esp
push str.user
push eax
or ebx, 0x1000000
push ecx
mov dword [esp + 0x2d4], 0x70
mov dword [esp + 0x78], ebx
call esi
add esp, 0xc
mov ecx, edi
mov dword [esp + 0x2c8], 0x73
call fcn.1001be40
jmp 0x10009737
xor eax, eax
test ebx, 0x1000000
mov dword [esp + 0x14], eax
mov dword [esp + 0x274], 0x75
je 0x10009762
and ebx, 0xfeffffff
lea ecx, [esp + 0x68]
mov dword [esp + 0x18], ebx
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
test ebx, 0x800000
mov dword [esp + 0x274], 0x74
je 0x1000978c
and ebx, 0xff7fffff
lea ecx, [esp + 0xa0]
mov dword [esp + 0x18], ebx
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
test ebx, 0x400000
mov dword [esp + 0x274], 5
je 0x100097b2
lea ecx, [esp + 0xbc]
and ebx, 0xffbfffff
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov eax, dword [esp + 0x20]
mov ecx, dword [eax + 4]
lea ebp, [eax + 4]
lea edx, [esp + 0x14]
push edx
push ecx
push eax
lea ecx, [esp + 0x28]
call fcn.10010d50
push 1
lea ecx, [esp + 0x20]
mov edi, eax
call fcn.10007990
mov dword [ebp], edi
mov eax, dword [edi + 4]
mov dword [eax], edi
mov edi, dword [esp + 0x34]
cmp dword [esp + 0x27c], 0x190
jne 0x10009a23
push 0x68
call sub.MSVCR80.dll_void____cdecl_operator_new_unsigned_int_
mov edi, eax
add esp, 4
mov dword [esp + 0x2c], edi
test edi, edi
mov byte [esp + 0x274], 0x77
je 0x10009872
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x4c], esp
push 0x100a0604
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x60], esp
push str.softforum
mov byte [esp + 0x2b0], 0x78
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
sub esp, 0x1c
lea edx, [esp + 0x164]
mov ecx, esp
mov dword [esp + 0x68], esp
push edx
mov byte [esp + 0x2cc], 0x79
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
mov ecx, edi
mov byte [esp + 0x2c8], 0x77
call fcn.1001be40
jmp 0x10009874
xor eax, eax
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x20]
mov edx, dword [eax + 4]
lea edi, [eax + 4]
lea ecx, [esp + 0x14]
push ecx
push edx
push eax
lea ecx, [esp + 0x28]
mov byte [esp + 0x280], 5
call fcn.10010d50
push 1
lea ecx, [esp + 0x20]
mov ebp, eax
call fcn.10007990
mov dword [edi], ebp
mov eax, dword [ebp + 4]
push 0x68
mov dword [eax], ebp
call sub.MSVCR80.dll_void____cdecl_operator_new_unsigned_int_
mov edi, eax
add esp, 4
mov dword [esp + 0x2c], edi
test edi, edi
mov byte [esp + 0x274], 0x7a
je 0x1000992a
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x4c], esp
push 0x100a0604
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x60], esp
push str.KEPCO
mov byte [esp + 0x2b0], 0x7b
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
sub esp, 0x1c
lea eax, [esp + 0x164]
mov ecx, esp
mov dword [esp + 0x68], esp
push eax
mov byte [esp + 0x2cc], 0x7c
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
mov ecx, edi
mov byte [esp + 0x2c8], 0x7a
call fcn.1001be40
jmp 0x1000992c
xor eax, eax
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x20]
mov edx, dword [eax + 4]
lea edi, [eax + 4]
lea ecx, [esp + 0x14]
push ecx
push edx
push eax
lea ecx, [esp + 0x28]
mov byte [esp + 0x280], 5
call fcn.10010d50
push 1
lea ecx, [esp + 0x20]
mov ebp, eax
call fcn.10007990
mov dword [edi], ebp
mov eax, dword [ebp + 4]
push 0x68
mov dword [eax], ebp
call sub.MSVCR80.dll_void____cdecl_operator_new_unsigned_int_
mov edi, eax
add esp, 4
mov dword [esp + 0x2c], edi
test edi, edi
mov byte [esp + 0x274], 0x7d
je 0x100099e2
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x4c], esp
push 0x100a0604
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x60], esp
push str.KDBCA
mov byte [esp + 0x2b0], 0x7e
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
sub esp, 0x1c
lea eax, [esp + 0x164]
mov ecx, esp
mov dword [esp + 0x68], esp
push eax
mov byte [esp + 0x2cc], 0x7f
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
mov ecx, edi
mov byte [esp + 0x2c8], 0x7d
call fcn.1001be40
jmp 0x100099e4
xor eax, eax
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x20]
mov edx, dword [eax + 4]
lea ebp, [eax + 4]
lea ecx, [esp + 0x14]
push ecx
push edx
push eax
lea ecx, [esp + 0x28]
mov byte [esp + 0x280], 5
call fcn.10010d50
push 1
lea ecx, [esp + 0x20]
mov edi, eax
call fcn.10007990
mov dword [ebp], edi
mov eax, dword [edi + 4]
mov dword [eax], edi
mov edi, dword [esp + 0x34]
sub esp, 0x1c
lea eax, [esp + 0x12c]
mov ecx, esp
mov dword [esp + 0x48], esp
push eax
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
mov edx, dword [esp + 0x298]
lea ecx, [esp + 0x38]
push ecx
push edx
call fcn.1001e560
add esp, 0x24
test eax, eax
mov dword [esp + 0x14], eax
je 0x10009bbe
mov eax, dword [esp + 0x27c]
mov ecx, dword [esp + 0x14]
xor ebp, ebp
mov dword [ecx + 0x6c], eax
cmp dword [esp + 0x140], ebp
jbe 0x10009acc
cmp dword [esp + 0x144], 0x10
mov eax, dword [esp + 0x130]
jae 0x10009a8c
lea eax, [esp + 0x130]
push eax
lea ecx, [esp + 0xf8]
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
mov ecx, dword [esp + 0x14]
lea edx, [esp + 0xf4]
push edx
add ecx, 0x50
mov byte [esp + 0x278], 0x80
call dword [sym.imp.MSVCP80.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::operator_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
lea ecx, [esp + 0xf4]
mov byte [esp + 0x274], 5
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
cmp dword [esp + 0x128], 0x10
mov eax, dword [esp + 0x114]
jae 0x10009ae4
lea eax, [esp + 0x114]
mov ecx, dword [edi]
push eax
mov eax, dword [esp + 0x18]
push eax
push str._CertificateDB_new_Media__x__at_dir__s_
push ecx
call fcn.10077b60
mov eax, dword [esp + 0x28c]
add esp, 0x10
cmp eax, 0x44c
jg 0x10009b4d
cmp eax, 0x44c
je 0x10009b48
cmp eax, 0xc8
jg 0x10009b30
je 0x10009b2b
test eax, eax
je 0x10009b26
cmp eax, 0x64
jne 0x10009b78
lea ebp, [edi + 0x14]
jmp 0x10009b78
lea ebp, [edi + 8]
jmp 0x10009b78
lea ebp, [edi + 0x20]
jmp 0x10009b78
cmp eax, 0x190
je 0x10009b43
cmp eax, 0x3e8
jne 0x10009b78
lea ebp, [edi + 0x50]
jmp 0x10009b78
lea ebp, [edi + 0x38]
jmp 0x10009b78
lea ebp, [edi + 0x5c]
jmp 0x10009b78
cmp eax, 0xbb8
jg 0x10009b6e
je 0x10009b64
cmp eax, 0x4b0
je 0x10009b69
cmp eax, 0x578
jne 0x10009b78
lea ebp, [edi + 0x44]
jmp 0x10009b78
lea ebp, [edi + 0x68]
jmp 0x10009b78
cmp eax, 0xc1c
jne 0x10009b78
lea ebp, [edi + 0x2c]
mov edi, dword [ebp + 4]
mov eax, dword [edi + 4]
lea edx, [esp + 0x14]
push edx
push eax
push edi
mov ecx, ebp
call fcn.10010d50
push 1
mov ecx, ebp
mov dword [esp + 0x1c], eax
call fcn.10007a20
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0x14]
mov dword [edi + 4], eax
mov ecx, dword [eax + 4]
mov edi, dword [esp + 0x34]
mov dword [ecx], eax
mov ebp, dword [ebp + 8]
mov ecx, dword [esp + 0x27c]
add ebp, ecx
mov dword [edx + 0x70], ebp
jmp 0x10009bc6
mov dword [esp + 0x50], 0xfffffff6
cmp dword [esp + 0x40], 0
jne 0x10008340
lea ecx, [esp + 0x148]
mov byte [esp + 0x274], 4
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
lea ecx, [esp + 0x12c]
mov byte [esp + 0x274], 3
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
lea ecx, [esp + 0x110]
mov byte [esp + 0x274], 2
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
lea ecx, [esp + 0x44]
mov byte [esp + 0x274], 1
call fcn.100043a0
mov eax, dword [esp + 0x48]
push eax
call sub.MSVCR80.dll_void___cdecl_operator_delete_void__
xor esi, esi
add esp, 4
lea ecx, [esp + 0x38]
mov dword [esp + 0x48], esi
mov byte [esp + 0x274], 0
call fcn.100043a0
mov ecx, dword [esp + 0x3c]
push ecx
call sub.MSVCR80.dll_void___cdecl_operator_delete_void__
add esp, 4
lea ecx, [esp + 0x1c]
mov dword [esp + 0x3c], esi
call fcn.1004d490
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x26c]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x254]
xor ecx, esp
call fcn.10090e24
add esp, 0x264
ret 8