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

Disassembly:
mov ecx, dword [0x6da2bd58]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x6d902c6b
sub esp, 0x70
mov eax, dword [0x6da2bd18]
test eax, eax
jl 0x6d902c54
mov ecx, dword [esp + 0x74]
test ecx, ecx
jle 0x6d902c54
mov dword [esp + 0x30], eax
movzx edx, byte [0x6da0e370]
test dl, dl
jne 0x6d902466
xor edx, edx
xor ebx, ebx
jmp 0x6d90247e
call fcn.6d919cc0
mov eax, dword [esp]
mov ecx, dword [esp + 4]
mov edx, ecx
mov ebx, eax
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x74]
test edx, edx
je 0x6d9024ae
mov dword [esp + 0x54], ebx
mov dword [esp + 0x28], edx
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.6d919e40
mov eax, dword [esp + 0x54]
mov dword [esp], eax
mov eax, dword [esp + 0x28]
mov dword [esp + 4], eax
call fcn.6d919df0
nop
call fcn.6d92d110
mov eax, dword [0x6da0e458]
mov ecx, dword [0x6da0e45c]
mov edx, dword [esp]
mov dword [esp + 0x2c], edx
mov ebx, dword [esp + 4]
test eax, eax
xchg ebp, ebx
setne bl
xchg ebp, ebx
test ecx, ecx
xchg esi, ebx
setne bl
xchg esi, ebx
or esi, ebp
xchg esi, eax
test al, al
xchg esi, eax
je 0x6d902536
mov ebp, dword [0x6da0e460]
mov esi, dword [0x6da0e464]
mov dword [esp + 0x4c], esi
mov edi, dword [esp + 0x30]
sar edi, 0x1f
sub edx, eax
mov dword [esp + 0x48], edx
mov eax, ebx
sbb ebx, ecx
mov ecx, eax
mov eax, dword [esp + 0x30]
mul edx
mov esi, dword [esp + 0x48]
imul edi, esi
add edx, edi
mov esi, dword [esp + 0x30]
imul ebx, esi
add edx, ebx
add ebp, eax
mov dword [0x6da0e460], ebp
mov ebx, dword [esp + 0x4c]
adc ebx, edx
mov dword [0x6da0e464], ebx
jmp 0x6d90253c
mov ecx, ebx
mov esi, dword [esp + 0x30]
mov dword [esp + 0x4c], ecx
mov edx, dword [esp + 0x2c]
mov dword [0x6da0e458], edx
mov dword [0x6da0e45c], ecx
mov ebx, dword [esp + 0x74]
lea ebp, [ebx + 0x1f]
sar ebp, 0x1f
shr ebp, 0x1b
lea ebp, [ebp + ebx + 0x1f]
sar ebp, 5
mov dword [esp + 0x34], ebp
cmp dword [0x6da0d2b4], ebx
jge 0x6d902735
nop
nop
lea eax, [0x6da2bd24]
mov dword [esp], eax
call fcn.6d8ca4e0
mov eax, dword [esp + 0x74]
lea ecx, [0x6da0d2b0]
cmp dword [ecx + 8], eax
jl 0x6d90259e
mov dword [0x6da0d2b4], eax
jmp 0x6d90262a
lea ecx, [0x6d971040]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], eax
call fcn.6d9278d0
mov eax, dword [esp + 0xc]
mov dword [esp + 0x6c], eax
mov ecx, dword [0x6da0d2b0]
mov edx, dword [0x6da0d2b8]
lea ebx, [0x6d971040]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov ebx, dword [esp + 0x74]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], edx
call fcn.6d925c60
mov eax, dword [esp + 0x74]
mov dword [0x6da0d2b4], eax
mov dword [0x6da0d2b8], eax
mov ecx, dword [0x6da2be38]
test ecx, ecx
jne 0x6d90260a
mov ebx, dword [esp + 0x6c]
jmp 0x6d90261e
call fcn.6d92c390
mov ebx, dword [esp + 0x6c]
mov dword [edi], ebx
mov ebp, dword [0x6da0d2b0]
mov dword [edi + 4], ebp
mov dword [0x6da0d2b0], ebx
lea ecx, [0x6da0d2b0]
mov edx, dword [0x6da0d2c8]
mov ebx, dword [esp + 0x34]
cmp edx, ebx
jl 0x6d90265d
jb 0x6d902c4d
mov dword [0x6da0d2c4], ebx
mov edx, dword [0x6da0d2d8]
cmp edx, ebx
jb 0x6d902c46
mov dword [0x6da0d2d4], ebx
jmp 0x6d902711
mov eax, dword [0x6da0d2c0]
mov ecx, dword [0x6da0d2c4]
lea edx, [0x6d96e140]
mov dword [esp], edx
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
call fcn.6d90a840
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x34]
mov dword [0x6da0d2c4], ecx
mov dword [0x6da0d2c8], ecx
mov edx, dword [0x6da2be38]
test edx, edx
je 0x6d9026b1
call fcn.6d92c390
mov dword [edi], eax
mov edx, dword [0x6da0d2c0]
mov dword [edi + 4], edx
mov dword [0x6da0d2c0], eax
mov eax, dword [0x6da0d2d0]
mov edx, dword [0x6da0d2d4]
lea ebx, [0x6d96e140]
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], eax
call fcn.6d90a840
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x34]
mov dword [0x6da0d2d4], ecx
mov dword [0x6da0d2d8], ecx
mov edx, dword [0x6da2be38]
test edx, edx
je 0x6d90270b
call fcn.6d92c390
mov dword [edi], eax
mov edx, dword [0x6da0d2d0]
mov dword [edi + 4], edx
mov dword [0x6da0d2d0], eax
nop
nop
lea eax, [0x6da2bd24]
mov dword [esp], eax
call fcn.6d8ca700
mov ecx, dword [esp + 0x4c]
mov edx, dword [esp + 0x2c]
mov ebx, dword [esp + 0x74]
mov ebp, dword [esp + 0x34]
mov esi, dword [esp + 0x30]
mov eax, esi
jmp 0x6d902771
mov ecx, dword [0x6da0d2b0]
lea ecx, [ecx + eax*4]
mov dword [esp], ecx
mov ecx, dword [esp + 0x60]
mov dword [esp + 4], ecx
call fcn.6d8c4630
mov eax, dword [esp + 0x40]
lea esi, [eax + 1]
mov eax, dword [esp + 0x74]
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x4c]
mov edx, dword [esp + 0x2c]
mov ebx, dword [esp + 0x74]
mov ebp, dword [esp + 0x34]
cmp ebx, esi
jle 0x6d9027d1
mov edi, dword [0x6da0d2b4]
cmp esi, edi
jae 0x6d902c3d
mov dword [esp + 0x40], esi
mov edi, dword [0x6da0d2b0]
mov edi, dword [edi + esi*4]
test edi, edi
jne 0x6d9027aa
lea eax, [0x6d97a400]
mov dword [esp], eax
call fcn.6d8cbdb0
mov edi, dword [esp + 4]
mov esi, dword [esp + 0x40]
mov dword [esp + 0x60], edi
mov dword [esp], edi
mov dword [esp + 4], esi
call fcn.6d901f40
mov ecx, dword [0x6da0d2b4]
mov eax, dword [esp + 0x40]
cmp eax, ecx
jb 0x6d902739
jmp 0x6d902c38
mov esi, dword [0x6da2bd58]
mov esi, dword fs:[esi]
mov esi, dword [esi]
mov dword [esp + 0x64], esi
mov edi, dword [esi + 0x18]
mov edi, dword [edi + 0x58]
test edi, edi
je 0x6d9028de
mov dword [esp + 0x44], edi
cmp dword [edi], ebx
jl 0x6d9028c4
mov edi, dword [esp + 0x44]
test edi, edi
je 0x6d9028de
movzx edi, byte [0x6da0e370]
xchg edi, eax
test al, al
xchg edi, eax
jne 0x6d90281f
xor edi, edi
xor edi, edi
mov dword [esp + 0x50], edi
xor edi, edi
jmp 0x6d902849
call fcn.6d919cc0
mov eax, dword [esp]
mov ecx, dword [esp + 4]
mov edx, dword [esp + 0x2c]
mov ebx, dword [esp + 0x74]
mov ebp, dword [esp + 0x34]
mov esi, dword [esp + 0x64]
mov edi, ecx
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x4c]
test edi, edi
je 0x6d9028b5
mov dword [esp + 0x24], edi
nop
mov eax, dword [esp + 0x50]
mov dword [esp], eax
mov dword [esp + 4], edi
mov byte [esp + 8], 1
call fcn.6d91ac30
mov eax, dword [esp + 0x64]
mov ecx, dword [eax + 0x18]
mov ecx, dword [ecx + 0x58]
mov edx, dword [esp + 0x50]
mov dword [esp], edx
mov ebx, dword [esp + 0x24]
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
call fcn.6d91a010
mov eax, dword [esp + 0x50]
mov dword [esp], eax
mov eax, dword [esp + 0x24]
mov dword [esp + 4], eax
call fcn.6d919df0
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x4c]
mov edx, dword [esp + 0x2c]
mov ebx, dword [esp + 0x74]
mov ebp, dword [esp + 0x34]
mov esi, dword [esp + 0x64]
mov edi, dword [esi + 0x18]
mov edi, dword [edi + 0x58]
mov dword [edi + 0x2c], 0
jmp 0x6d9028de
mov dword [edi + 4], 1
mov eax, dword [esi + 0x18]
mov eax, dword [eax + 0x58]
mov eax, dword [eax + 0x30]
mov dword [esp], eax
call fcn.6d8d09e0
jmp 0x6d90295d
mov edi, dword [esi + 0x18]
mov dword [edi + 0x58], 0
mov edi, dword [0x6da0d2b4]
test edi, edi
jbe 0x6d902c2f
mov eax, dword [0x6da0d2b0]
mov eax, dword [eax]
mov dword [eax + 0x2c], 0
mov dword [eax + 4], 0
mov dword [esp], eax
call fcn.6d902c80
movzx eax, byte [0x6da0e370]
test al, al
jne 0x6d902925
xor ecx, ecx
xor eax, eax
jmp 0x6d902931
call fcn.6d919cc0
mov eax, dword [esp]
mov ecx, dword [esp + 4]
test ecx, ecx
je 0x6d90295d
mov dword [esp + 0x20], ecx
mov dword [esp + 0x58], eax
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.6d91aa10
mov eax, dword [esp + 0x58]
mov dword [esp], eax
mov eax, dword [esp + 0x20]
mov dword [esp + 4], eax
call fcn.6d919df0
mov dword [0x6da2bcf4], 0
mov edx, dword [esp + 0x30]
mov ebx, dword [esp + 0x74]
mov eax, ebx
jmp 0x6d90299b
mov dword [esp + 0x3c], ebx
mov eax, dword [0x6da0d2b0]
mov eax, dword [eax + ebx*4]
mov dword [esp], eax
call fcn.6d9020c0
mov eax, dword [esp + 0x3c]
lea ebx, [eax + 1]
mov eax, dword [esp + 0x30]
mov eax, dword [esp + 0x74]
mov edx, dword [esp + 0x30]
cmp ebx, edx
jge 0x6d9029ae
mov ecx, dword [0x6da0d2b4]
cmp ebx, ecx
jb 0x6d902973
jmp 0x6d902c28
lea ebx, [0x6da0d2b0]
cmp dword [ebx + 4], eax
je 0x6d902a25
nop
nop
lea eax, [0x6da2bd24]
mov dword [esp], eax
call fcn.6d8ca4e0
mov edx, dword [0x6da0d2b8]
mov ecx, dword [esp + 0x74]
cmp ecx, edx
ja 0x6d902c23
mov dword [0x6da0d2b4], ecx
mov edx, dword [0x6da0d2c8]
mov eax, dword [esp + 0x34]
cmp edx, eax
jb 0x6d902c1c
mov dword [0x6da0d2c4], eax
mov edx, dword [0x6da0d2d8]
cmp edx, eax
jb 0x6d902c15
mov dword [0x6da0d2d4], eax
nop
nop
lea eax, [0x6da2bd24]
mov dword [esp], eax
call fcn.6d8ca700
mov eax, dword [esp + 0x74]
mov edx, dword [esp + 0x30]
lea ebx, [eax - 1]
mov ebp, dword [esp + 0x64]
xor ecx, ecx
jmp 0x6d902a31
dec ebx
mov dword [esp + 0x5c], ecx
test ebx, ebx
jl 0x6d902ae2
mov esi, dword [0x6da0d2b4]
cmp ebx, esi
jae 0x6d902c0c
mov esi, dword [0x6da0d2b0]
mov esi, dword [esi + ebx*4]
mov edi, dword [ebp + 0x18]
mov edi, dword [edi + 0x58]
cmp edi, esi
je 0x6d902a30
mov dword [esp + 0x38], ebx
mov dword [esp + 0x68], esi
mov dword [esi + 4], 0
mov dword [esp], esi
call fcn.6d905220
movzx eax, byte [esp + 4]
test al, al
jne 0x6d902aad
mov edx, dword [0x6da0e3bc]
nop
test edx, edx
je 0x6d902a9b
mov ebx, dword [edx + 0xb4]
mov dword [0x6da0e3bc], ebx
dec dword [0x6da0e3c0]
nop
mov ecx, dword [esp + 0x68]
mov dword [ecx + 0x2c], edx
mov edx, dword [esp + 0x5c]
nop
mov dword [ecx + 8], edx
jmp 0x6d902acd
mov eax, dword [esp + 0x68]
mov dword [esp], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 4], eax
mov ecx, dword [esp + 0x4c]
mov dword [esp + 8], ecx
call fcn.6d904e60
mov ecx, dword [esp + 0x5c]
mov eax, dword [esp + 0x74]
mov edx, dword [esp + 0x30]
mov ebx, dword [esp + 0x38]
mov ebp, dword [esp + 0x64]
jmp 0x6d902a30
nop
mov dword [0x6da0d350], eax
mov dword [0x6da0d358], 0
mov ebx, 1
jmp 0x6d902aff
lea ebx, [esi + 1]
mov eax, ebp
cmp eax, ebx
jb 0x6d902ba7
mov ebp, eax
mov esi, ebx
jmp 0x6d902c03
cmp ebx, 1
jne 0x6d902afa
mov ebx, dword [0x6da0d35c]
mov edi, dword [0x6da0d358]
inc edi
mov eax, dword [0x6da0d354]
cmp ebx, edi
jae 0x6d902b98
mov dword [esp + 0x48], esi
mov dword [esp], eax
mov dword [esp + 4], edi
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
lea eax, [0x6d96e140]
mov dword [esp + 0x10], eax
call fcn.6d927980
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov dword [0x6da0d35c], eax
mov eax, dword [0x6da2be38]
test eax, eax
je 0x6d902b7e
call fcn.6d92c390
mov dword [edi], ecx
mov ebx, dword [0x6da0d354]
mov dword [edi + 4], ebx
mov dword [0x6da0d354], ecx
mov ebp, dword [esp + 0x74]
mov esi, dword [esp + 0x48]
mov edi, edx
mov eax, ecx
mov ecx, dword [esp + 0x5c]
mov edx, dword [esp + 0x30]
mov dword [0x6da0d358], edi
mov dword [eax + edi*4 - 4], esi
jmp 0x6d902afa
lea ecx, [0x6da2bd18]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.6d930aa0
mov eax, dword [esp + 0x74]
mov ecx, dword [esp + 0x30]
cmp eax, ecx
je 0x6d902be7
lea ecx, [0x6da2c000]
mov dword [esp], ecx
mov ecx, dword [esp + 0x2c]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x4c]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
call fcn.6d8d8d70
mov eax, dword [esp + 0x5c]
mov dword [esp + 0x78], eax
add esp, 0x70
ret
mov edi, eax
mov eax, ebx
xor edx, edx
div edi
mov eax, edx
mov ebx, edi
mov edx, dword [esp + 0x30]
test eax, eax
jne 0x6d902bf3
jmp 0x6d902b10
mov eax, ebx
mov ecx, esi
call fcn.6d92c400
mov ecx, eax
call fcn.6d92c440
mov ecx, eax
call fcn.6d92c440
call fcn.6d92c440
mov eax, ebx
call fcn.6d92c400
xor eax, eax
mov ecx, eax
call fcn.6d92c400
call fcn.6d92c400
mov eax, esi
mov ecx, edi
call fcn.6d92c400
mov ecx, ebx
call fcn.6d92c440
mov ecx, ebx
call fcn.6d92c440
lea eax, [0x6d9803df]
mov dword [esp], eax
mov dword [esp + 4], 0x17
call fcn.6d926bb0
nop
call fcn.6d92af70
jmp fcn.6d902420