Function at 0x4853f0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0xe8
mov r12, rdx
mov word [rsp + 0x3c], r8w
mov rdi, rcx
mov esi, r8d
mov edx, 0x3a
xor r8d, r8d
lea rbp, [rsp + 0x70]
mov rcx, r12
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.find_char__unsigned_long_long__const
lea r15, [rsp + 0x60]
mov qword [rsp + 0x60], rbp
lea r13, [rsp + 0x90]
mov qword [rsp + 0x68], 0
mov rbx, rax
mov byte [rsp + 0x70], 0
mov qword [rsp + 0x80], r13
mov qword [rsp + 0x88], 0
mov byte [rsp + 0x90], 0
cmp rax, 0xffffffffffffffff
je 0x4856a0
mov rax, qword [r12 + 8]
mov rdx, qword [r12]
lea r14, [rsp + 0xd0]
lea rcx, [rsp + 0xc0]
mov qword [rsp + 0xc0], r14
cmp rbx, rax
cmovbe rax, rbx
xor r9d, r9d
lea r8, [rdx + rax]
call method.void_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___._M_construct_char_const__char_const__char_const__std::forward_iterator_tag_
mov rax, qword [rsp + 0xc0]
mov rcx, qword [rsp + 0x60]
mov r8, qword [rsp + 0xc8]
cmp rax, r14
je 0x485750
mov rdx, qword [rsp + 0xd0]
cmp rcx, rbp
je 0x4857d8
mov r9, qword [rsp + 0x70]
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], r8
mov qword [rsp + 0x70], rdx
test rcx, rcx
je 0x4857e7
mov qword [rsp + 0xc0], rcx
mov qword [rsp + 0xd0], r9
mov qword [rsp + 0xc8], 0
mov byte [rcx], 0
mov rcx, qword [rsp + 0xc0]
cmp rcx, r14
je 0x485521
call sym.operator_delete_void_
mov r9, qword [r12 + 8]
lea r8, [rbx + 1]
cmp r9, r8
jb 0x485d0b
mov rax, r9
mov rdx, qword [r12]
lea r14, [rsp + 0xb0]
lea rcx, [rsp + 0xa0]
sub rax, r8
mov qword [rsp + 0xa0], r14
add rdx, r8
cmp rax, r9
cmova rax, r9
xor r9d, r9d
lea r8, [rdx + rax]
call method.void_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___._M_construct_char_const__char_const__char_const__std::forward_iterator_tag_
mov rax, qword [rsp + 0xa0]
mov rcx, qword [rsp + 0x80]
mov r8, qword [rsp + 0xa8]
cmp rax, r14
je 0x485790
mov rdx, qword [rsp + 0xb0]
cmp rcx, r13
je 0x485800
mov r9, qword [rsp + 0x90]
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x88], r8
mov qword [rsp + 0x90], rdx
test rcx, rcx
je 0x485818
mov qword [rsp + 0xa0], rcx
mov qword [rsp + 0xb0], r9
mov qword [rsp + 0xa8], 0
mov byte [rcx], 0
mov rcx, qword [rsp + 0xa0]
cmp rcx, r14
je 0x4855f7
call sym.operator_delete_void_
lea rcx, [rsp + 0x5c]
mov rdx, r15
call method.epee::string_tools.get_ip_int32_from_string_unsigned_int__std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const_
mov r14, qword [rsp + 0x80]
mov r12d, eax
xor r15d, r15d
test al, al
je 0x485660
cmp rbx, 0xffffffffffffffff
je 0x485660
mov rcx, qword [rsp + 0x88]
mov rax, r14
add rcx, r14
cmp rcx, r14
jne 0x485645
jmp 0x485969
add rax, 1
cmp rcx, rax
je 0x485830
movsx edx, byte [rax]
sub edx, 0x30
cmp edx, 9
jbe 0x485638
xor r15d, r15d
xor r12d, r12d
nop word cs:[rax + rax]
cmp r14, r13
je 0x48566d
mov rcx, r14
call sym.operator_delete_void_
mov rcx, qword [rsp + 0x60]
cmp rcx, rbp
je 0x48567c
call sym.operator_delete_void_
test r12b, r12b
jne 0x4856b0
mov eax, r12d
add rsp, 0xe8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov rdx, r12
mov rcx, r15
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___._M_assign_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const_
jmp 0x4855f7
test si, si
je 0x4859b0
test r15w, r15w
jne 0x4859b0
mov ecx, 0x20
mov ebx, dword [rsp + 0x5c]
movabs rsi, 0x100000001
call sym.operator_new_unsigned_long_long_
mov r13, qword [rdi + 8]
mov qword [rax + 8], rsi
lea rsi, fcn.007f9a20
lea rdx, [rax + 0x10]
mov qword [rax], rsi
lea rsi, method.epee::net_utils::network_address::implementation_epee::net_utils::ipv4_network_address_.implementation__
mov qword [rax + 0x10], rsi
movzx esi, word [rsp + 0x3c]
mov dword [rax + 0x18], ebx
mov word [rax + 0x1c], si
mov qword [rdi], rdx
mov qword [rdi + 8], rax
test r13, r13
je 0x485681
lock sub dword [r13 + 8], 1
jne 0x485681
mov rax, qword [r13]
mov rcx, r13
call qword [rax + 0x10]
lock sub dword [r13 + 0xc], 1
jne 0x485681
mov rax, qword [r13]
mov rcx, r13
call qword [rax + 0x18]
jmp 0x485681
test r8, r8
je 0x485774
cmp r8, 1
je 0x4859c0
mov rdx, r14
call sym.memcpy
mov r8, qword [rsp + 0xc8]
mov rcx, qword [rsp + 0x60]
mov qword [rsp + 0x68], r8
mov byte [rcx + r8], 0
mov rcx, qword [rsp + 0xc0]
jmp 0x485500
test r8, r8
je 0x4857b7
cmp r8, 1
je 0x4859e0
mov rdx, r14
call sym.memcpy
mov r8, qword [rsp + 0xa8]
mov rcx, qword [rsp + 0x80]
mov qword [rsp + 0x88], r8
mov byte [rcx + r8], 0
mov rcx, qword [rsp + 0xa0]
jmp 0x4855d6
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], r8
mov qword [rsp + 0x70], rdx
mov qword [rsp + 0xc0], r14
lea r14, [rsp + 0xd0]
mov rcx, r14
jmp 0x485500
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x88], r8
mov qword [rsp + 0x90], rdx
mov qword [rsp + 0xa0], r14
lea r14, [rsp + 0xb0]
mov rcx, r14
jmp 0x4855d6
movzx eax, byte [r14]
mov ebx, eax
mov byte [rsp + 0x3e], al
lea rax, [rcx - 1]
lea edx, [rbx - 0x2b]
and edx, 0xfd
jne 0x485960
add r14, 1
cmp r14, rax
ja 0x485969
movsx r15w, byte [rcx - 1]
cmp r15b, 0x2f
jle 0x485969
lea rax, [rsp + 0xc0]
mov qword [rsp + 0x20], rax
cmp r15b, 0x39
jg 0x485976
lea rax, [rcx - 2]
sub r15d, 0x30
mov qword [rsp + 0x30], rax
mov rbx, rax
lea rax, [rsp + 0xa0]
mov rcx, rax
mov qword [rsp + 0x28], rax
call method.std::locale.locale__
call method.std::locale.classic__
mov rcx, qword [rsp + 0x28]
mov rdx, rax
call method.std::locale.operator_std::locale_const__const
mov byte [rsp + 0x3f], al
test al, al
je 0x485a24
cmp qword [rsp + 0x30], r14
jb 0x4859ff
sub r14, 1
mov ecx, 1
xor r8d, r8d
jmp 0x485917
lea ecx, [rcx + rcx*4]
sub edx, 0x30
add ecx, ecx
mov r9d, ecx
imul r9d, edx
test dx, dx
je 0x485907
test al, al
jne 0x48593e
mov eax, edx
mul cx
jo 0x48593e
not eax
cmp ax, r15w
jb 0x48593e
sub rbx, 1
add r15d, r9d
cmp rbx, r14
je 0x4859ff
mov eax, r8d
mov r8d, 1
test al, al
jne 0x485930
cmp cx, 0x1999
seta r8b
mov eax, r8d
movsx dx, byte [rbx]
lea r9d, [rdx - 0x30]
cmp r9b, 9
jbe 0x4858e0
mov rcx, qword [rsp + 0x28]
call fcn.007fdb00
lea rax, [rsp + 0xc0]
mov qword [rsp + 0x20], rax
jmp 0x485976
cmp rax, r14
jae 0x48585a
lea rax, [rsp + 0xc0]
mov qword [rsp + 0x20], rax
lea rax, [0x009a40d0]
mov rcx, qword [rsp + 0x20]
lea r12, method.boost::bad_lexical_cast.bad_lexical_cast__
mov qword [rsp + 0xc8], rax
mov rax, qword [0x0099ec10]
mov qword [rsp + 0xc0], r12
mov qword [rsp + 0xd0], rax
call method.void_boost::throw_exception_boost.bad_lexical_cast__boost::bad_lexical_cast_const_
nop dword [rax]
mov word [rsp + 0x3c], r15w
jmp 0x4856c3
movzx eax, byte [rsp + 0xd0]
mov byte [rcx], al
mov r8, qword [rsp + 0xc8]
mov rcx, qword [rsp + 0x60]
jmp 0x485774
movzx eax, byte [rsp + 0xb0]
mov byte [rcx], al
mov r8, qword [rsp + 0xa8]
mov rcx, qword [rsp + 0x80]
jmp 0x4857b7
mov rcx, qword [rsp + 0x28]
call fcn.007fdb00
mov eax, r15d
neg eax
cmp byte [rsp + 0x3e], 0x2d
cmove r15d, eax
mov r14, qword [rsp + 0x80]
jmp 0x485660
mov rcx, qword [rsp + 0x28]
call method.std::__cxx11::numpunct_char__const_std::use_facet_std::__cxx11.numpunct_char____std::locale_const_
mov rdx, rax
mov rax, qword [rax]
lea rcx, [rsp + 0xc0]
mov qword [rsp + 0x20], rcx
mov qword [rsp + 0x40], rdx
call qword [rax + 0x20]
mov rax, qword [rsp + 0xc8]
mov r10, qword [rsp + 0xc0]
mov qword [rsp + 0x48], rax
test rax, rax
je 0x485b74
cmp byte [r10], 0
jle 0x485b74
mov rcx, qword [rsp + 0x40]
mov rax, qword [rcx]
call qword [rax + 0x18]
mov r10, qword [rsp + 0xc0]
mov edx, eax
movzx eax, byte [r10]
lea r8d, [rax - 1]
cmp qword [rsp + 0x30], r14
jb 0x485c65
mov rax, qword [rsp + 0x48]
mov dword [rsp + 0x40], esi
mov ebx, 1
mov esi, edx
mov qword [rsp + 0x130], rdi
mov rcx, qword [rsp + 0x30]
xor r11d, r11d
xor r9d, r9d
sub rax, 1
mov byte [rsp + 0x30], r12b
mov rdi, rax
jmp 0x485b08
cmp sil, dl
jne 0x485c88
cmp r14, rcx
je 0x485c38
movzx eax, r9b
cmp rax, rdi
jae 0x485af3
add r9d, 1
movzx eax, r9b
movzx r8d, byte [r10 + rax]
lea rax, [rcx - 1]
cmp r14, rcx
je 0x485c6c
mov rcx, rax
movsx dx, byte [rcx]
test r8b, r8b
je 0x485ad0
mov eax, r11d
mov r11d, 1
test al, al
jne 0x485b2a
cmp bx, 0x1999
seta r11b
mov eax, r11d
lea r12d, [rdx - 0x30]
cmp r12b, 9
ja 0x485c38
lea ebx, [rbx + rbx*4]
sub edx, 0x30
add ebx, ebx
mov r12d, ebx
imul r12d, edx
test dx, dx
je 0x485b6b
test al, al
jne 0x485c38
mov eax, edx
mul bx
jo 0x485c4c
not eax
cmp r15w, ax
ja 0x485c4c
add r15d, r12d
sub r8d, 1
jmp 0x485af8
cmp qword [rsp + 0x30], r14
jb 0x485c65
sub r14, 1
mov ecx, 1
xor r8d, r8d
jmp 0x485bd0
lea ecx, [rcx + rcx*4]
lea edx, [rax - 0x30]
add ecx, ecx
mov r9d, ecx
imul r9d, edx
test dx, dx
je 0x485bc0
test r11b, r11b
jne 0x485bf6
mov eax, edx
mul cx
jo 0x485c5e
not eax
cmp r15w, ax
ja 0x485c5e
sub rbx, 1
add r15d, r9d
cmp rbx, r14
je 0x485c65
mov r11d, r8d
mov r8d, 1
test r11b, r11b
jne 0x485bea
cmp cx, 0x1999
seta r8b
mov r11d, r8d
movsx ax, byte [rbx]
lea edx, [rax - 0x30]
cmp dl, 9
jbe 0x485b90
lea rax, [rsp + 0xd0]
cmp r10, rax
je 0x485c0b
mov rcx, r10
call sym.operator_delete_void_
mov rcx, qword [rsp + 0x28]
call fcn.007fdb00
mov eax, r15d
neg eax
cmp byte [rsp + 0x3e], 0x2d
cmove r15d, eax
cmp byte [rsp + 0x3f], 0
jne 0x485a17
jmp 0x485976
movzx r12d, byte [rsp + 0x30]
mov rdi, qword [rsp + 0x130]
mov esi, dword [rsp + 0x40]
jmp 0x485bf6
movzx r12d, byte [rsp + 0x30]
mov rdi, qword [rsp + 0x130]
mov esi, dword [rsp + 0x40]
mov byte [rsp + 0x3f], 0
jmp 0x485bf6
mov byte [rsp + 0x3f], r12b
jmp 0x485bf6
movzx r12d, byte [rsp + 0x30]
mov rdi, qword [rsp + 0x130]
mov esi, dword [rsp + 0x40]
mov byte [rsp + 0x3f], r12b
jmp 0x485bf6
movzx r12d, byte [rsp + 0x30]
mov rdi, qword [rsp + 0x130]
mov esi, dword [rsp + 0x40]
cmp r14, rcx
jbe 0x485ce0
jmp 0x485c65
lea ebx, [rbx + rbx*4]
lea edx, [rax - 0x30]
add ebx, ebx
mov r8d, ebx
imul r8d, edx
test dx, dx
je 0x485cd4
test r9b, r9b
jne 0x485bf6
mov eax, edx
mul bx
jo 0x485c5e
not eax
cmp ax, r15w
jb 0x485c5e
sub rcx, 1
add r15d, r8d
cmp r14, rcx
ja 0x485c65
mov r9d, r11d
mov r11d, 1
test r9b, r9b
jne 0x485cfa
cmp bx, 0x1999
seta r11b
mov r9d, r11d
movsx ax, byte [rcx]
lea edx, [rax - 0x30]
cmp dl, 9
jbe 0x485ca8
jmp 0x485bf6
lea rdx, [0x0087e2e5]
lea rcx, [0x0087e300]
call method.std.__throw_out_of_range_fmt_char_const__..._
mov rcx, qword [rsp + 0xc0]
mov rbx, rax
mov r12, rdx
lea rax, [rsp + 0xd0]
cmp rcx, rax
je 0x485d3e
call sym.operator_delete_void_
mov rcx, qword [rsp + 0x28]
call fcn.007fdb00
mov rcx, rbx
sub r12, 1
je 0x485dc5
call sym.__cxa_begin_catch
call sym.__cxa_end_catch
mov r14, qword [rsp + 0x80]
xor r15d, r15d
xor r12d, r12d
jmp 0x485660
call sym.__cxa_begin_catch
xor r15d, r15d
xor r12d, r12d
call sym.__cxa_end_catch
mov r14, qword [rsp + 0x80]
jmp 0x485660