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

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
mov eax, 0x48
call fcn.1801c83e0
sub rsp, rax
xor r12d, r12d
mov rbx, rcx
mov ecx, dword [rcx + 0x48]
or r15d, 0xffffffff
lea edi, [rax + 8]
mov dword [rbp + 0x48], r12d
mov qword [rbp - 0x18], r12
mov qword [rbp + 0x60], r12
cmp ecx, 0x2112
jne 0x1800ed38e
cmp dword [rbx + 0x1a8], r12d
je 0x1800ede1b
mov eax, dword [rbx + 0x48]
cmp ecx, 0x2110
mov edx, 0x2111
cmove eax, edx
lea rcx, [rbp + 0x50]
lea r8d, [rdx + 1]
mov qword [rsp + 0x28], rcx
mov dword [rbx + 0x48], eax
mov rax, qword [rbx + 8]
mov r9d, 1
mov rcx, rbx
mov dword [rbx + 0x1a8], 1
mov dword [rsp + 0x20], 0x4000
call qword [rax + 0x60]
cmp dword [rbp + 0x50], 0
movsxd r12, eax
jne 0x1800ed3e2
mov eax, r12d
jmp 0x1800ee014
mov rcx, qword [rbx + 0x58]
mov dword [rbx + 0x1a8], 0
mov qword [rbp + 0x58], rcx
mov r13, rcx
cmp r12d, 0x23
jge 0x1800ed417
mov dword [rsp + 0x20], 0x3b2
lea r9, [0x1802d0b18]
mov r8d, 0xa0
jmp 0x1800edfd6
movzx eax, byte [rcx + 1]
movzx edx, byte [rcx]
add rcx, 2
mov qword [rbp + 0x58], rcx
mov rcx, qword [rbx + 8]
shl edx, 8
or edx, eax
mov dword [rbx + 0x1ac], edx
mov rax, qword [rcx + 0xc8]
test byte [rax + 0x70], 8
je 0x1800ed49d
cmp edx, dword [rbx]
jle 0x1800ed44e
cmp dword [rcx], 0x1ffff
jne 0x1800ed4a8
xor r9d, r9d
xor r8d, r8d
mov rcx, rbx
lea edx, [r9 + 0x20]
call fcn.1800bcf40
mov rdx, qword [rbp + 0x58]
bt eax, 0xd
jae 0x1800ed513
movzx r8d, byte [rdx + 0x20]
mov ecx, r13d
sub ecx, edx
lea eax, [r8 + 0x21]
add ecx, r12d
cmp eax, ecx
jb 0x1800ed501
mov dword [rsp + 0x20], 0x3da
lea r9, [0x1802d0b38]
mov r8d, 0xa0
jmp 0x1800edfd6
xor ecx, ecx
cmp edx, dword [rbx]
setl cl
test ecx, ecx
je 0x1800ed44e
mov edx, 0x8a
lea r9, [0x1802d0b28]
mov r8d, 0x10b
lea ecx, [rdx - 0x76]
mov dword [rsp + 0x20], 0x3c0
call fcn.180004810
mov r11d, dword [rbx + 0x1ac]
mov eax, r11d
and eax, 0xffffff00
cmp eax, 0x300
jne 0x1800ed4f7
cmp qword [rbx + 0xe8], 0
jne 0x1800ed4f7
cmp qword [rbx + 0xf0], 0
jne 0x1800ed4f7
mov dword [rbx], r11d
mov edi, 0x46
jmp 0x1800edfe8
cmp byte [r8 + rdx + 0x21], 0
jne 0x1800ed513
mov eax, 1
jmp 0x1800ee014
mov rax, qword [rdx]
mov rcx, qword [rbx + 0x80]
mov r14, r12
mov qword [rcx + 0xc0], rax
mov rax, qword [rdx + 8]
mov qword [rbp - 0x10], r12
mov qword [rcx + 0xc8], rax
mov rax, qword [rdx + 0x10]
mov qword [rcx + 0xd0], rax
mov rax, qword [rdx + 0x18]
mov qword [rcx + 0xd8], rax
mov rdx, qword [rbp + 0x58]
mov rax, r12
add rdx, 0x20
mov qword [rbp + 0x58], rdx
inc rdx
movzx r8d, byte [rdx - 1]
sub rax, rdx
mov qword [rbp + 0x58], rdx
add rax, r13
mov esi, r8d
cmp rax, r8
jge 0x1800ed58f
mov dword [rsp + 0x20], 0x3ec
lea r9, [0x1802d0b48]
mov r8d, 0xa0
jmp 0x1800edfd6
cmp r8d, 0x20
ja 0x1800edfc1
cmp dword [rbx + 0x3c], 0
mov dword [rbx + 0xa8], 0
je 0x1800ed5b5
test dword [rbx + 0x19c], 0x10000
jne 0x1800ed5e8
lea r9, [r12 + r13]
mov rcx, rbx
call fcn.1800c3d90
cmp eax, 1
jne 0x1800ed5df
mov rax, qword [rbx + 0x130]
mov ecx, dword [rax]
cmp dword [rbx], ecx
jne 0x1800ed5e8
mov dword [rbx + 0xa8], 1
jmp 0x1800ed5fd
cmp eax, 0xffffffff
je 0x1800edffc
mov edx, 1
mov rcx, rbx
call fcn.1800c35d0
test eax, eax
je 0x1800edffc
mov r10, qword [rbp + 0x58]
mov rax, qword [rbx + 8]
add r10, rsi
mov qword [rbp + 0x58], r10
mov rcx, qword [rax + 0xc8]
test byte [rcx + 0x70], 8
je 0x1800ed824
mov rax, r12
sub rax, r10
add rax, r13
cmp rax, 1
jge 0x1800ed646
mov dword [rsp + 0x20], 0x424
lea r9, [0x1802d0b68]
mov r8d, 0xa0
jmp 0x1800edfd6
movzx esi, byte [r10]
inc r10
mov eax, r13d
sub eax, r10d
mov qword [rbp + 0x58], r10
add eax, r12d
cmp eax, esi
jae 0x1800ed678
mov dword [rsp + 0x20], 0x42b
lea r9, [0x1802d0b78]
mov r8d, 0xa0
jmp 0x1800edfd6
cmp esi, 0x100
jbe 0x1800ed69a
mov dword [rsp + 0x20], 0x437
lea r9, [0x1802d0b88]
mov r8d, 0x134
jmp 0x1800edfd6
xor r9d, r9d
xor r8d, r8d
mov rcx, rbx
lea edx, [r9 + 0x20]
call fcn.1800bcf40
bt eax, 0xd
jae 0x1800ed76a
test esi, esi
je 0x1800ed76a
mov rcx, qword [rbx + 0x88]
mov rdx, qword [rbp + 0x58]
mov r8, rsi
add rcx, 0x104
call fcn.1801c9a10
mov r11, qword [rbx + 0x170]
mov rax, qword [r11 + 0xc0]
test rax, rax
je 0x1800ed722
mov rdx, qword [rbx + 0x88]
mov r8d, esi
mov rcx, rbx
add rdx, 0x104
call rax
test eax, eax
jne 0x1800ed763
lea edi, [rax + 0x28]
mov dword [rsp + 0x20], 0x444
lea r9, [0x1802d0b98]
mov r8d, 0x134
jmp 0x1800edfdb
mov rcx, qword [rbx + 0x88]
mov r8d, dword [rcx + 0x204]
lea rdx, [rcx + 4]
add rcx, 0x104
call fcn.1801ca0b0
test eax, eax
je 0x1800ed763
mov edi, Ordinal_41
mov dword [rsp + 0x20], 0x44d
lea r9, [0x1802d0ba8]
mov r8d, 0x134
jmp 0x1800edfdb
mov dword [rbp + 0x48], 1
mov r10, qword [rbp + 0x58]
mov rax, qword [rbx + 8]
add r10, rsi
mov qword [rbp + 0x58], r10
cmp dword [rax], 0x1ffff
jne 0x1800ed824
mov ecx, dword [rbx + 0x1ac]
cmp ecx, 0xfefd
jg 0x1800ed7ac
test dword [rbx + 0x19c], 0x8000000
jne 0x1800ed7ac
mov dword [rbx], 0xfefd
call fcn.1800f3110
jmp 0x1800ed811
mov rax, qword [rbx + 0x100]
test dword [rax + 0x54], 0x30000
je 0x1800ed7f2
mov edx, 0x8a
lea r9, [0x1802d0bb8]
mov r8d, 0x183
lea ecx, [rdx - 0x76]
mov dword [rsp + 0x20], 0x45c
call fcn.180004810
mov r11d, dword [rbx + 0x1ac]
mov edi, 0x46
mov dword [rbx], r11d
jmp 0x1800edfe8
cmp ecx, 0xfeff
jg 0x1800ed84d
test dword [rbx + 0x19c], 0x4000000
jne 0x1800ed84d
mov dword [rbx], 0xfeff
call fcn.1800f3100
mov rcx, qword [rbx + 0x130]
mov qword [rbx + 8], rax
mov eax, dword [rbx]
mov dword [rcx], eax
mov r10, qword [rbp + 0x58]
mov rax, r12
sub rax, r10
add rax, r13
cmp rax, 2
jge 0x1800ed883
mov dword [rsp + 0x20], 0x471
lea r9, [0x1802d0bd8]
mov r8d, 0xa0
jmp 0x1800edfd6
mov edx, 0x8a
lea r9, [0x1802d0bc8]
mov r8d, 0x10b
lea ecx, [rdx - 0x76]
mov dword [rsp + 0x20], 0x466
call fcn.180004810
mov r11d, dword [rbx + 0x1ac]
mov edi, 0x46
mov dword [rbx], r11d
jmp 0x1800edfe8
movzx esi, byte [r10]
movzx eax, byte [r10 + 1]
add r10, 2
shl esi, 8
mov qword [rbp + 0x58], r10
or esi, eax
jne 0x1800ed8b8
lea edi, [rsi + 0x2f]
mov dword [rsp + 0x20], 0x478
lea r9, [0x1802d0be8]
mov r8d, 0xb7
jmp 0x1800edfdb
mov rdx, r12
lea eax, [rsi + 1]
sub rdx, r10
movsxd rcx, eax
add rdx, r13
cmp rdx, rcx
jge 0x1800ed8e0
mov dword [rsp + 0x20], 0x480
lea r9, [0x1802d0bf8]
jmp 0x1800edfd0
lea r9, [rbp + 0x60]
mov r8d, esi
mov rdx, r10
mov rcx, rbx
call fcn.1800bd680
test rax, rax
je 0x1800edffc
mov rcx, qword [rbp + 0x58]
movsxd rax, esi
add rcx, rax
cmp dword [rbx + 0xa8], 0
mov qword [rbp + 0x58], rcx
je 0x1800ed976
mov rax, qword [rbx + 0x130]
xor esi, esi
mov rcx, qword [rax + 0xd0]
mov r12d, dword [rcx + 0x10]
mov rcx, qword [rbp + 0x60]
call fcn.180012980
test eax, eax
jle 0x1800ed953
mov rcx, qword [rbp + 0x60]
mov edx, esi
call fcn.180012990
cmp dword [rax + 0x10], r12d
je 0x1800ed972
mov rcx, qword [rbp + 0x60]
inc esi
call fcn.180012980
cmp esi, eax
jl 0x1800ed933
mov edi, Ordinal_50
mov dword [rsp + 0x20], 0x4b8
lea r9, [0x1802d0c08]
mov r8d, 0xd7
jmp 0x1800edfdb
mov rcx, qword [rbp + 0x58]
movzx r15d, byte [rcx]
inc rcx
mov rax, r14
sub rax, rcx
mov qword [rbp + 0x58], rcx
add rax, r13
cmp rax, r15
jge 0x1800ed9a3
mov dword [rsp + 0x20], 0x4c2
lea r9, [0x1802d0c18]
jmp 0x1800edfd0
xor r12d, r12d
mov r14, rcx
mov edx, r12d
mov eax, r12d
test r15d, r15d
jle 0x1800ed9c4
cmp byte [rax + rcx], r12b
je 0x1800ed9c4
inc rax
inc edx
cmp rax, r15
jl 0x1800ed9b4
add rcx, r15
mov qword [rbp + 0x58], rcx
cmp edx, r15d
jl 0x1800ed9ea
mov dword [rsp + 0x20], 0x4d1
lea r9, [0x1802d0c28]
mov r8d, 0xbb
jmp 0x1800edfd6
cmp dword [rbx], 0x300
jl 0x1800eda2e
mov r8, qword [rbp - 0x10]
lea rdx, [rbp + 0x58]
mov rcx, rbx
add r8, r13
call fcn.1800d7230
test eax, eax
jne 0x1800eda2e
mov edx, 0x8a
lea r9, [0x1802d0c38]
lea ecx, [rax + 0x14]
lea r8d, [rdx + 0x59]
mov dword [rsp + 0x20], 0x4d8
call fcn.180004810
jmp 0x1800edff8
mov r8, qword [rbx + 0x80]
mov edx, 1
mov rcx, rbx
lea r9d, [rdx + 0x1f]
add r8, 0xa0
call fcn.1800ca600
test eax, eax
jle 0x1800edfe8
cmp dword [rbx + 0xa8], r12d
jne 0x1800edbab
cmp dword [rbx], 0x301
jl 0x1800edbab
cmp qword [rbx + 0x248], r12
je 0x1800edbab
mov rax, qword [rbx + 0x130]
mov qword [rbp - 0x10], r12
mov rcx, rbx
mov dword [rax + 0x10], gethostbyname
mov rax, qword [rbx + 0x250]
mov rdx, qword [rbx + 0x130]
mov r9, qword [rbp + 0x60]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x10]
lea r8, [rdx + 0x10]
add rdx, 0x14
mov qword [rsp + 0x20], rax
call qword [rbx + 0x248]
test eax, eax
je 0x1800edbab
mov rax, qword [rbp + 0x60]
mov rcx, qword [rbx + 0x130]
mov dword [rbx + 0xa8], 1
mov qword [rcx + 0xe0], rax
mov rax, qword [rbx + 0x130]
mov dword [rax + 0xb8], r12d
mov rcx, qword [rbp - 0x10]
mov qword [rbp + 0x60], r12
test rcx, rcx
jne 0x1800edb47
mov rcx, rbx
call fcn.1800bd4a0
mov rdx, qword [rbx + 0x130]
mov rcx, rbx
mov rdx, qword [rdx + 0xe0]
mov r8, rax
call fcn.1800de200
mov rcx, rax
mov qword [rbp - 0x10], rax
test rax, rax
jne 0x1800edb47
lea edi, [rax + 0x28]
mov dword [rsp + 0x20], 0x502
lea r9, [0x1802d0c48]
mov r8d, 0xc1
jmp 0x1800edfdb
mov rax, qword [rbx + 0x130]
mov qword [rax + 0xd0], rcx
mov rcx, qword [rbx + 0xb8]
test rcx, rcx
je 0x1800edb66
call fcn.180012940
mov rcx, qword [rbx + 0xc0]
test rcx, rcx
je 0x1800edb77
call fcn.180012940
mov rcx, qword [rbx + 0x130]
mov rcx, qword [rcx + 0xe0]
call fcn.180012a30
mov rcx, qword [rbx + 0x130]
mov qword [rbx + 0xb8], rax
mov rcx, qword [rcx + 0xe0]
call fcn.180012a30
mov qword [rbx + 0xc0], rax
mov rax, qword [rbx + 0x80]
mov qword [rax + 0x408], r12
mov rax, qword [rbx + 0x130]
mov r13d, dword [rax + 0xc8]
test r13d, r13d
je 0x1800edcd2
test dword [rbx + 0x19c], 0x20000
je 0x1800edbf6
mov dword [rsp + 0x20], 0x522
lea r9, [0x1802d0c58]
mov r8d, 0x154
jmp 0x1800edfdb
mov rcx, qword [rbx + 0x170]
mov rcx, qword [rcx + 0xf8]
call fcn.180012980
test eax, eax
jle 0x1800edc5d
nop dword [rax]
mov rcx, qword [rbx + 0x170]
mov edx, r12d
mov rcx, qword [rcx + 0xf8]
call fcn.180012990
mov rcx, rax
mov qword [rbp - 0x18], rax
cmp r13d, dword [rax]
je 0x1800edc4f
mov rcx, qword [rbx + 0x170]
inc r12d
mov rcx, qword [rcx + 0xf8]
call fcn.180012980
cmp r12d, eax
jl 0x1800edc10
jmp 0x1800edc5d
mov rax, qword [rbx + 0x80]
mov qword [rax + 0x408], rcx
mov rax, qword [rbx + 0x80]
cmp qword [rax + 0x408], 0
jne 0x1800edc88
mov dword [rsp + 0x20], 0x52f
lea r9, [0x1802d0c68]
mov r8d, 0x155
jmp 0x1800edfdb
xor r12d, r12d
mov edx, r12d
mov ecx, r12d
test r15d, r15d
jle 0x1800edcaa
movzx eax, byte [rcx + r14]
cmp eax, r13d
je 0x1800edcaa
inc rcx
inc edx
cmp rcx, r15
jl 0x1800edc96
cmp edx, r15d
jl 0x1800eddd9
mov edi, Ordinal_50
mov dword [rsp + 0x20], 0x53a
lea r9, [0x1802d0c78]
mov r8d, 0x156
jmp 0x1800edfdb
cmp dword [rbx + 0xa8], r12d
jne 0x1800edd50
test dword [rbx + 0x19c], 0x20000
jne 0x1800edd50
mov rax, qword [rbx + 0x170]
mov rcx, qword [rax + 0xf8]
test rcx, rcx
je 0x1800edd50
call fcn.180012980
mov r13d, eax
test eax, eax
jle 0x1800edd4d
mov rcx, qword [rbx + 0x170]
mov edx, r12d
mov rcx, qword [rcx + 0xf8]
call fcn.180012990
xor ecx, ecx
mov edx, dword [rax]
mov r8, rax
test r15d, r15d
jle 0x1800edd45
nop dword [rax + rax]
movzx eax, byte [rcx + r14]
cmp edx, eax
je 0x1800eddc3
inc rcx
cmp rcx, r15
jl 0x1800edd30
inc r12d
cmp r12d, r13d
jl 0x1800edd06
xor r12d, r12d
mov r8, r12
cmp dword [rbx + 0xa8], 0
jne 0x1800edec6
mov ecx, r12d
test r8, r8
je 0x1800edd6b
mov ecx, dword [r8]
mov rax, qword [rbx + 0x130]
mov dword [rax + 0xc8], ecx
mov rax, qword [rbx + 0x130]
mov rcx, qword [rax + 0xe0]
test rcx, rcx
je 0x1800edd90
call fcn.180012940
mov rcx, qword [rbx + 0x130]
mov rax, qword [rbp + 0x60]
mov qword [rcx + 0xe0], rax
cmp qword [rbp + 0x60], 0
jne 0x1800edde2
mov dword [rsp + 0x20], 0x56f
lea r9, [0x1802d0c88]
mov r8d, 0x44
jmp 0x1800edfdb
mov rax, qword [rbx + 0x80]
xor r12d, r12d
mov qword [rax + 0x408], r8
jmp 0x1800edd53
mov r8, qword [rbp - 0x18]
jmp 0x1800edd53
mov rcx, rbx
mov qword [rbp + 0x60], r12
call fcn.1800d7330
test eax, eax
jne 0x1800ede17
mov dword [rsp + 0x20], 0x574
lea r9, [0x1802d0c98]
mov edx, 0x8a
lea ecx, [rdx - 0x76]
lea r8d, [rdx + 0x58]
call fcn.180004810
jmp 0x1800edff8
or r15d, 0xffffffff
mov rdx, qword [rbx + 0x100]
mov rax, qword [rdx + 0x268]
test rax, rax
je 0x1800ede6d
mov rdx, qword [rdx + 0x270]
mov rcx, rbx
call rax
test eax, eax
jne 0x1800ede58
mov dword [rsp + 0x20], 0x57d
lea r9, [0x1802d0ca8]
mov r8d, 0x179
jmp 0x1800edfdb
jns 0x1800ede66
mov dword [rbx + 0x28], 4
jmp 0x1800ee011
mov dword [rbx + 0x28], 1
mov rcx, rbx
call fcn.1800bd4a0
mov rdx, qword [rbx + 0x130]
mov rcx, rbx
mov rdx, qword [rdx + 0xe0]
mov r8, rax
call fcn.1800de200
mov r11, rax
test rax, rax
jne 0x1800edeb3
lea edi, [rax + 0x28]
mov dword [rsp + 0x20], 0x58a
lea r9, [0x1802d0cb8]
mov r8d, 0xc1
jmp 0x1800edfdb
mov rax, qword [rbx + 0x80]
mov qword [rax + 0x3a0], r11
jmp 0x1800edf63
test dword [rbx + 0x19c], 0x40000000
mov rax, qword [rbx + 0x130]
mov rsi, r12
je 0x1800edf4e
mov r14, qword [rax + 0xe0]
xor r13d, r13d
mov rcx, r14
call fcn.180012980
test eax, eax
jle 0x1800edf47
mov edx, r13d
mov rcx, r14
call fcn.180012990
mov rcx, r14
test byte [rax + 0x1c], 0x20
cmovne rsi, rax
test byte [rax + 0x28], 2
cmovne r12, rax
inc r13d
call fcn.180012980
cmp r13d, eax
jl 0x1800edef2
test rsi, rsi
je 0x1800edf32
mov rax, qword [rbx + 0x80]
mov qword [rax + 0x3a0], rsi
jmp 0x1800edf63
test r12, r12
je 0x1800edf47
mov rax, qword [rbx + 0x80]
mov qword [rax + 0x3a0], r12
jmp 0x1800edf63
mov rax, qword [rbx + 0x130]
mov rcx, qword [rbx + 0x80]
mov rax, qword [rax + 0xd0]
mov qword [rcx + 0x3a0], rax
mov rax, qword [rbx + 8]
mov rcx, qword [rax + 0xc8]
test byte [rcx + 0x70], 2
je 0x1800edf7d
test byte [rbx + 0x140], 1
jne 0x1800edf89
mov rcx, rbx
call fcn.1800e14a0
test eax, eax
je 0x1800edfe8
cmp dword [rbx], 0x300
jl 0x1800edfb1
mov rcx, rbx
call fcn.1800d49f0
test eax, eax
jg 0x1800edfb1
mov dword [rsp + 0x20], 0x5bd
lea r9, [0x1802d0cc8]
jmp 0x1800ede01
xor r15d, r15d
cmp dword [rbp + 0x48], r15d
setne r15b
inc r15d
jmp 0x1800ee003
mov dword [rsp + 0x20], 0x3f2
lea r9, [0x1802d0b58]
mov r8d, 0x9f
mov edi, reloc.WLDAP32.dll_Ordinal_50
mov edx, 0x8a
lea ecx, [rdx - 0x76]
call fcn.180004810
mov r8d, edi
mov edx, 2
mov rcx, rbx
call fcn.1800d7fd0
or r15d, 0xffffffff
mov dword [rbx + 0x48], 5
mov rcx, qword [rbp + 0x60]
test rcx, rcx
je 0x1800ee011
call fcn.180012940
mov eax, r15d
add rsp, 0x48
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret