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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
mov eax, dword [0x1019273c]
sub esp, 0x84
cmp dword [eax], 0
push ebx
push esi
push edi
je 0x10085a8a
mov eax, dword [0x10190fc4]
add eax, 0x12d8
mov dword [esp + 0x14], eax
call fcn.100863e0
mov ecx, dword [0x10190fc4]
lea ecx, [ecx + 0x12f8]
call fcn.100b6b70
test al, al
je 0x10085a8a
mov eax, dword [0x10190fcc]
mov ecx, dword [eax + 0x18]
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
call eax
mov ecx, dword [0x10190fcc]
mov esi, eax
mov dword [esp + 0x20], esi
mov ecx, dword [ecx + 0x10]
mov edx, dword [ecx]
mov edx, dword [edx + 0x50]
call edx
lea edi, [eax + 1]
mov dword [esp + 0x18], edi
cmp edi, esi
jg 0x100858b1
nop dword [eax]
mov eax, dword [0x10190fcc]
push edi
mov ecx, dword [eax + 0x18]
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
mov esi, eax
test esi, esi
je case.0x100857e0.10
mov edx, dword [esi + 8]
lea ecx, [esi + 8]
mov edx, dword [edx + 0x24]
call edx
test al, al
jne case.0x100857e0.10
mov eax, dword [esi + 8]
lea ecx, [esi + 8]
mov eax, dword [eax + 8]
call eax
mov eax, dword [eax + 0x14]
add eax, 0xfffffff7
cmp eax, 0x98
ja case.0x100857e0.10
movzx eax, byte [eax + 0x10085fd8]
jmp dword [eax*4 + 0x10085fd0]
mov eax, dword [0x10190fc0]
xor ecx, ecx
mov eax, dword [eax + 0x14]
mov dword [esp + 0x1c], eax
mov edx, dword [eax + 0xc]
test edx, edx
jle 0x1008581a
mov eax, dword [eax]
nop
cmp dword [eax], 0xfffffffe
jne 0x1008580e
cmp dword [eax + 4], esi
je case.0x100857e0.10
inc ecx
add eax, 0x38
cmp ecx, edx
jl 0x10085800
mov eax, dword [esp + 0x1c]
mov ebx, dword [eax + 0x14]
mov dword [esp + 0x24], ebx
cmp ebx, 0xffffffff
je 0x1008589e
mov ecx, dword [eax]
lea edx, [ebx*8]
sub edx, ebx
mov ebx, dword [esp + 0x1c]
mov eax, dword [ecx + edx*8]
mov dword [ebx + 0x14], eax
mov dword [ecx + edx*8 + 4], esi
mov ecx, ebx
mov ebx, dword [esp + 0x24]
mov dword [esp + 0x1c], ebx
mov eax, dword [ecx]
mov byte [eax + edx*8 + 0x2a], 0
mov eax, dword [ecx]
mov dword [eax + edx*8 + 0x2c], 0
mov eax, dword [ecx]
mov dword [eax + edx*8 + 0x34], 0xffffffff
mov eax, dword [ecx]
mov dword [eax + edx*8], 0xfffffffe
mov eax, dword [0x1027b820]
cmp eax, dword [0x1027b824]
je 0x10085888
mov dword [eax], edi
mov dword [eax + 4], ebx
add dword [0x1027b820], 8
jmp case.0x100857e0.10
lea ecx, [esp + 0x1c]
push ecx
lea ecx, [esp + 0x1c]
push ecx
push eax
call fcn.100866d0
mov edi, dword [esp + 0x18]
jmp case.0x100857e0.10
mov dword [esp + 0x1c], ebx
inc edi
mov dword [esp + 0x18], edi
cmp edi, dword [esp + 0x20]
jle 0x10085790
mov eax, dword [0x10190fc0]
mov dword [esp + 0x10], 0
mov eax, dword [eax + 0x14]
cmp dword [eax + 0xc], 0
jle 0x10085a8a
mov ecx, dword [0x10191b58]
xor esi, esi
mov eax, dword fs:[0x2c]
mov dword [esp + 0x24], esi
lea eax, [eax + ecx*4]
xor ecx, ecx
mov dword [esp + 0x20], eax
mov eax, dword [0x10190fc0]
mov eax, dword [eax + 0x14]
mov edi, dword [eax]
add edi, esi
cmp dword [edi], 0xfffffffe
mov esi, dword [edi + 4]
jne 0x10085a69
test esi, esi
je 0x10085a69
mov eax, dword [esi + 8]
lea ecx, [esi + 8]
mov eax, dword [eax + 0x24]
call eax
test al, al
jne 0x10085a65
mov eax, dword [esi + 8]
lea ecx, [esi + 8]
mov dword [esp + 0x18], edi
mov dword [esp + 0x1c], edi
mov eax, dword [eax + 8]
call eax
mov eax, dword [eax + 0x14]
add eax, 0xfffffff7
cmp eax, 0x98
ja case.0x10085944.10
movzx eax, byte [eax + 0x10086094]
jmp dword [eax*4 + 0x10086074]
mov eax, dword [esi]
mov ecx, esi
mov eax, dword [eax + 0x270]
call eax
test al, al
je 0x10085a65
mov eax, dword [esi]
mov ecx, esi
mov eax, dword [eax + 0x430]
call eax
mov edi, eax
test edi, edi
je 0x10085a91
mov edx, dword [edi + 8]
lea ecx, [edi + 8]
mov edx, dword [edx + 8]
call edx
cmp dword [eax + 0x14], 0x22
jne 0x10085a91
mov eax, dword [esp + 0x20]
mov ecx, dword [eax]
mov eax, dword [0x1019c1ec]
cmp eax, dword [ecx + 4]
jle 0x100859db
push 0x1019c1ec
call fcn.101273eb
add esp, 4
cmp dword [0x1019c1ec], 0xffffffff
jne 0x100859db
mov edx, 0xc60bf9f2
mov ecx, 0x101737fd
call fcn.10070760
mov ecx, eax
call fcn.100ba500
push 0x1019c1ec
mov dword [0x1019c1e4], eax
call fcn.1012739a
add esp, 4
mov eax, dword [0x1019c1e4]
cmp byte [eax + edi], 0
je 0x10085a91
xorps xmm0, xmm0
movaps xmmword [esp + 0x70], xmm0
mov dword [esp + 0x70], 0x6e616c50
mov dword [esp + 0x74], 0x676e6974
mov dword [esp + 0x84], 0xf
lea ecx, [esp + 0x1c]
mov dword [esp + 0x80], 8
mov byte [esp + 0x78], 0
push esi
lea eax, [esp + 0x74]
push eax
call fcn.10086310
mov ecx, dword [esp + 0x84]
cmp ecx, 0xf
jbe 0x10085a65
mov edx, dword [esp + 0x70]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10085a5b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10085fcb
push ecx
push edx
call fcn.10127383
add esp, 8
mov ecx, dword [esp + 0x10]
mov eax, dword [0x10190fc0]
inc ecx
mov esi, dword [esp + 0x24]
add esi, 0x38
mov dword [esp + 0x10], ecx
mov dword [esp + 0x24], esi
mov eax, dword [eax + 0x14]
cmp ecx, dword [eax + 0xc]
jl 0x100858e6
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [esp + 0x20]
mov ecx, dword [eax]
mov eax, dword [0x1019c1e0]
cmp eax, dword [ecx + 4]
jle 0x10085ae2
push 0x1019c1e0
call fcn.101273eb
add esp, 4
cmp dword [0x1019c1e0], 0xffffffff
jne 0x10085ae2
mov edx, 0xc60bf9f2
mov ecx, 0x101737e1
call fcn.10070760
mov ecx, eax
call fcn.100ba500
push 0x1019c1e0
mov dword [0x1019c1e8], eax
call fcn.1012739a
add esp, 4
mov eax, dword [0x1019c1e8]
cmp byte [eax + esi], 0
je 0x10085b0a
xorps xmm0, xmm0
movaps xmmword [esp + 0x70], xmm0
mov dword [esp + 0x70], 0x75666544
mov dword [esp + 0x74], 0x676e6973
jmp 0x10085a02
mov eax, dword [0x1019273c]
mov ecx, dword [eax]
cmp esi, ecx
jne 0x10085b89
mov eax, dword [esi]
mov ecx, esi
mov eax, dword [eax + 0x1e8]
call eax
mov ecx, dword [0x1015b75c]
mov esi, eax
xorps xmm0, xmm0
mov dword [esp + 0x80], 0xc
movaps xmmword [esp + 0x70], xmm0
lea eax, [esp + 0x70]
movq xmm0, qword [str.Local_Player]
push eax
lea eax, [esp + 0x2c]
mov dword [esp + 0x7c], ecx
mov ecx, dword [esp + 0x18]
push eax
mov dword [esp + 0x8c], 0xf
movq qword [esp + 0x78], xmm0
mov byte [esp + 0x84], 0
call fcn.100864a0
push esi
lea ecx, [esp + 0x1c]
mov eax, dword [eax]
add eax, 0x20
push eax
call fcn.10086130
jmp 0x10085a2c
mov eax, dword [0x10190fc0]
push ecx
mov ecx, esi
mov eax, dword [eax + 0x38]
call eax
mov dword [esp + 0x84], 0xf
xorps xmm0, xmm0
lea ecx, [esp + 0x1c]
push esi
test al, al
je 0x10085be5
mov eax, dword [0x1015b76c]
mov dword [esp + 0x74], eax
mov ax, word [0x1015b770]
mov word [esp + 0x78], ax
mov al, byte [0x1015b772]
movlpd qword [esp + 0x7c], xmm0
mov dword [esp + 0x84], 7
mov byte [esp + 0x7a], al
mov byte [esp + 0x7b], 0
jmp 0x10085a22
mov eax, dword [0x1015b764]
movaps xmmword [esp + 0x74], xmm0
mov dword [esp + 0x74], eax
mov ax, word [0x1015b768]
mov dword [esp + 0x84], 6
mov word [esp + 0x78], ax
mov byte [esp + 0x7a], 0
jmp 0x10085a22
mov ecx, dword [esp + 0x14]
xorps xmm0, xmm0
movaps xmmword [esp + 0x70], xmm0
mov eax, 0x3443
mov word [esp + 0x70], ax
lea eax, [esp + 0x70]
push eax
lea eax, [esp + 0x34]
mov dword [esp + 0x84], 2
push eax
mov dword [esp + 0x8c], 0xf
mov byte [esp + 0x7a], 0
call fcn.100864a0
push 0
lea ecx, [esp + 0x1c]
mov eax, dword [eax]
add eax, 0x20
push eax
call fcn.10086130
jmp 0x10085a2c
mov ax, word [0x10165214]
xorps xmm0, xmm0
mov ecx, dword [esp + 0x14]
movaps xmmword [esp + 0x70], xmm0
movq xmm0, qword [str.Planted_C4]
mov word [esp + 0x78], ax
lea eax, [esp + 0x70]
push eax
lea eax, [esp + 0x3c]
mov dword [esp + 0x84], 0xa
push eax
mov dword [esp + 0x8c], 0xf
movq qword [esp + 0x78], xmm0
mov byte [esp + 0x82], 0
call fcn.100864a0
push 0
lea ecx, [esp + 0x1c]
mov eax, dword [eax]
add eax, 0x20
push eax
call fcn.10086130
jmp 0x10085a2c
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x70]
push eax
xorps xmm0, xmm0
mov dword [esp + 0x84], 8
movaps xmmword [esp + 0x74], xmm0
lea eax, [esp + 0x44]
push eax
mov dword [esp + 0x8c], 0xf
mov dword [esp + 0x78], 0x63696843
mov dword [esp + 0x7c], 0x736e656b
mov byte [esp + 0x80], 0
call fcn.100864a0
push 0
lea ecx, [esp + 0x1c]
mov eax, dword [eax]
add eax, 0x20
push eax
call fcn.10086130
jmp 0x10085a2c
mov ax, word [0x101746c0]
movq xmm0, qword [str.Defuse_Kits]
mov ecx, dword [esp + 0x14]
mov word [esp + 0x78], ax
mov al, byte [0x101746c2]
mov byte [esp + 0x7a], al
lea eax, [esp + 0x70]
push eax
lea eax, [esp + 0x4c]
mov dword [esp + 0x80], 0
push eax
mov dword [esp + 0x88], 0xb
mov dword [esp + 0x8c], 0xf
movq qword [esp + 0x78], xmm0
mov byte [esp + 0x83], 0
call fcn.100864a0
push 0
lea ecx, [esp + 0x1c]
mov eax, dword [eax]
add eax, 0x20
push eax
call fcn.10086130
jmp 0x10085a2c
mov ax, word [0x1015bb48]
movq xmm0, qword [str.Projectiles]
mov ecx, dword [esp + 0x14]
mov word [esp + 0x78], ax
mov al, byte [0x1015bb4a]
mov byte [esp + 0x7a], al
lea eax, [esp + 0x70]
push eax
lea eax, [esp + 0x54]
mov dword [esp + 0x80], 0
push eax
mov dword [esp + 0x88], 0xb
mov dword [esp + 0x8c], 0xf
movq qword [esp + 0x78], xmm0
mov byte [esp + 0x83], 0
call fcn.100864a0
push 0
lea ecx, [esp + 0x1c]
mov eax, dword [eax]
add eax, 0x20
push eax
call fcn.10086130
jmp 0x10085a2c
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x70]
push eax
xorps xmm0, xmm0
mov dword [esp + 0x84], 8
movaps xmmword [esp + 0x74], xmm0
lea eax, [esp + 0x5c]
push eax
mov dword [esp + 0x8c], 0xf
mov dword [esp + 0x78], 0x74736f48
mov dword [esp + 0x7c], 0x73656761
mov byte [esp + 0x80], 0
call fcn.100864a0
push 0
lea ecx, [esp + 0x1c]
mov eax, dword [eax]
add eax, 0x20
push eax
call fcn.10086130
jmp 0x10085a2c
mov eax, dword [esi]
mov ecx, esi
mov eax, dword [eax + 0x298]
call eax
test al, al
je 0x10085a65
mov eax, dword [0x1015bb38]
xorps xmm0, xmm0
mov ebx, dword [esp + 0x14]
mov ecx, ebx
mov dword [esp + 0x70], eax
mov ax, word [0x1015bb3c]
mov word [esp + 0x74], ax
mov al, byte [0x1015bb3e]
mov byte [esp + 0x76], al
lea eax, [esp + 0x70]
push eax
lea eax, [esp + 0x64]
movlpd qword [esp + 0x7c], xmm0
push eax
mov dword [esp + 0x88], 7
mov dword [esp + 0x8c], 0xf
mov byte [esp + 0x7f], 0
call fcn.100864a0
push 0
lea ecx, [esp + 0x1c]
mov eax, dword [eax]
add eax, 0x20
push eax
call fcn.10086130
mov ecx, dword [esp + 0x84]
cmp ecx, 0xf
jbe 0x10085f2b
mov edx, dword [esp + 0x70]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10085f21
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10085fcb
push ecx
push edx
call fcn.10127383
add esp, 8
mov eax, dword [0x1015bb38]
xorps xmm0, xmm0
mov dword [esp + 0x70], eax
mov ecx, ebx
mov ax, word [0x1015bb3c]
mov word [esp + 0x74], ax
mov al, byte [0x1015bb3e]
mov byte [esp + 0x76], al
lea eax, [esp + 0x70]
push eax
lea eax, [esp + 0x6c]
movlpd qword [esp + 0x7c], xmm0
push eax
mov dword [esp + 0x88], 7
mov dword [esp + 0x8c], 0xf
mov byte [esp + 0x7f], 0
call fcn.100864a0
mov ecx, dword [esp + 0x84]
mov eax, dword [eax]
mov bl, byte [eax + 0x35]
cmp ecx, 0xf
jbe 0x10085fb7
mov edx, dword [esp + 0x70]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10085fad
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10085fcb
push ecx
push edx
call fcn.10127383
add esp, 8
mov ecx, dword [esp + 0x10]
test bl, bl
jne 0x10085a69
mov byte [edi + 0x28], bl
jmp 0x10085a69
call fcn.1012fd0a
out 0x57, eax
or byte [eax], dl
mov byte [0x100858], al
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [eax], eax
add dword [ecx], eax
add dword [eax], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add byte [ecx], al
add dword [ecx], eax
add dword [eax], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [eax], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add byte [ecx], al
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [ecx], eax
add dword [eax], eax
add dword [ecx], eax
add dword [eax], eax
add dword [ecx], eax
add dword [eax], eax
nop dword [eax]
movsb byte es:[edi], byte [esi]
pop ebp
or byte [eax], dl
adc ebx, dword [eax + ecx + 0x10]
rcr dword [eax + ecx + 16], 1
dec ebx
pop ecx
or byte [eax], dl
xor byte [ebp + 8], bl
adc byte [eax], bl
pop esi
or byte [eax], dl
imul ebx, dword [eax + ecx + 0x10], 0x10085e77
add byte [edi], al
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
add byte [edi], al
pop es
pop es
add byte [ecx], al
pop es
add al, byte [edi]
pop es
pop es
add eax, dword [edi]
pop es
pop es
pop es
pop es
pop es
pop es
add byte [edi], al
pop es
pop es
pop es
add al, 7
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
add eax, 117901063
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
add byte [edi], al
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
push es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
pop es
add byte [edi], al
pop es
pop es
add byte [edi], al
pop es
pop es
add ah, cl
int3