Function at 0x414310
Capabilities:
Access peb ldr_data

Disassembly:
push 0xffffffffffffffff
push 0x50d3c9
mov eax, dword fs:[0]
push eax
sub esp, 0x1c
push ebx
push ebp
push esi
push edi
mov eax, dword [0x564020]
xor eax, esp
push eax
lea eax, [esp + 0x30]
mov dword fs:[0], eax
mov ebp, dword [esp + 0x40]
mov esi, dword [ebp + 0x1c]
mov edi, dword [esi + 0x10]
mov ebx, dword [sym.imp.MSVCR90.dll__invalid_parameter_noinfo]
cmp dword [esi + 0xc], edi
jbe 0x41434e
call ebx
mov eax, dword [esi]
lea esi, [ebp + 0x20]
test eax, eax
je 0x41435b
cmp eax, dword [esi]
je 0x41435d
call ebx
cmp edi, dword [esi + 4]
je 0x414432
mov eax, dword [esi]
test eax, eax
jne 0x414374
call ebx
mov eax, dword [esi]
test eax, eax
je 0x414378
mov eax, dword [eax]
jmp 0x41437a
xor eax, eax
mov ecx, dword [esi + 4]
cmp ecx, dword [eax + 0x10]
jb 0x414384
call ebx
mov ecx, dword [esi + 4]
push 0
push 0x55c030
call dword [sym.imp.MSVCP90.dll_public:_unsigned_int___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::find_first_not_of_char_const___unsigned_int_const]
mov edx, dword [sym.imp.MSVCP90.dll_unsigned_int_const_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::npos]
mov edi, eax
cmp dword [edx], edi
je 0x41442e
mov eax, dword [esi]
test eax, eax
jne 0x4143b2
call ebx
mov eax, dword [esi]
test eax, eax
je 0x4143b6
mov eax, dword [eax]
jmp 0x4143b8
xor eax, eax
mov ecx, dword [esi + 4]
cmp ecx, dword [eax + 0x10]
jb 0x4143c2
call ebx
mov ecx, dword [esi + 4]
push edi
call dword [sym.imp.MSVCP90.dll_public:_char____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::at_unsigned_int_]
cmp byte [eax], 0x23
je 0x41442e
push edi
call fcn.00414620
mov ecx, eax
call dword [sym.imp.MSVCP90.dll_public:_char____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::at_unsigned_int_]
cmp byte [eax], 0x5b
jne 0x414432
push 0
push 0x5d
call fcn.00414620
mov ecx, eax
call dword [sym.imp.MSVCP90.dll_public:_unsigned_int___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::find_char__unsigned_int_const]
dec eax
push eax
inc edi
push edi
lea edx, [esp + 0x1c]
push edx
call fcn.00414620
mov ecx, eax
call dword [sym.imp.MSVCP90.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_]
push eax
mov ecx, ebp
mov dword [esp + 0x3c], 0
call dword [sym.imp.MSVCP90.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 + 0x14]
mov dword [esp + 0x38], 0xffffffff
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov al, 1
jmp 0x414434
xor al, al
mov ecx, dword [esp + 0x30]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x28
ret 4