Function at 0x100567e0
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1009f4c5
mov eax, dword fs:[0]
push eax
sub esp, 0x58
mov eax, dword [0x100b7040]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
mov dword [ebp - 0x64], esi
mov eax, dword [esi]
mov dword [0x100bacac], eax
cmp byte [esi + 0x34], 0
je 0x10056ef3
mov edi, dword [sym.imp.KERNEL32.dll_GetTickCount64]
call edi
sub eax, dword [esi + 0x40]
mov ecx, eax
sbb edx, dword [esi + 0x44]
call fcn.1009bcb0
divss xmm0, dword [0x100ae940]
comiss xmm0, dword [0x100ae904]
jb 0x10056ef3
call edi
mov dword [esi + 0x40], eax
mov eax, dword [esi + 0x30]
mov dword [esi + 0x44], edx
test eax, eax
jle 0x1005685f
dec eax
mov dword [esi + 0x30], eax
test eax, eax
js 0x10056ee8
xorps xmm0, xmm0
mov word [ebp - 0x30], 0x23
lea ecx, [ebp - 0x2f]
mov byte [ebp - 0x2f], 0
movups xmmword [ebp - 0x28], xmm0
mov dword [ebp - 0x18], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x14], 0
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10056890
sub ecx, edx
lea eax, [ebp - 0x2f]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.10002540
mov dword [ebp - 4], 0
mov eax, 0xc22e4507
mov edi, dword [esi + 0x30]
imul edi
add edx, edi
sar edx, 0x10
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
call fcn.10047580
call fcn.1009bbb0
mov esi, eax
mov edx, edi
imul ecx, esi, 0x15180
mov eax, 0x91a2b3c5
mov dword [ebp - 0x30], esi
sub edx, ecx
mov ecx, 0x18
mul edx
shr edx, 0xb
mov eax, edx
xor edx, edx
div ecx
mov ecx, edx
call fcn.100475c0
call fcn.1009bbb0
lea ecx, [esi + esi*2]
mov dword [ebp - 0x38], eax
mov edx, edi
lea esi, [eax + ecx*8]
mov eax, 0x88888889
imul ecx, esi, 0xe10
sub edx, ecx
mov ecx, 0x3c
mul edx
shr edx, 5
mov eax, edx
xor edx, edx
div ecx
mov ecx, edx
call fcn.100475c0
call fcn.1009bbb0
mov ecx, esi
mov dword [ebp - 0x2c], eax
shl ecx, 4
sub ecx, esi
mov esi, eax
lea ecx, [esi + ecx*4]
mov edx, ecx
shl edx, 4
sub edx, ecx
mov ecx, 0x3c
shl edx, 2
sub edi, edx
xor edx, edx
mov eax, edi
div ecx
mov ecx, edx
call fcn.100475c0
call fcn.1009bbb0
mov ecx, dword [ebp - 0x30]
mov edi, eax
test ecx, ecx
je 0x10056a63
cmp ecx, 0xa
jae 0x1005698e
mov dl, 0x74
mov byte [ebp - 0x2a], 0
mov al, 0x44
mov byte [ebp - 0x2c], dl
xor al, dl
mov byte [ebp - 0x2a], 0
mov byte [ebp - 0x2b], al
lea eax, [ebp - 0x2b]
jmp 0x1005699b
mov word [ebp - 0x30], 0xf
lea eax, [ebp - 0x2f]
mov byte [ebp - 0x2f], 0
push ecx
push eax
mov dh, 7
mov byte [ebp - 0x3a], 0
mov al, 0x22
mov byte [ebp - 0x40], dh
mov dl, al
mov byte [ebp - 0x3a], 0
mov cl, 0x74
mov ah, 0x72
mov ch, 0x3d
xor al, dh
xor cl, dh
mov byte [ebp - 0x3f], al
xor ah, dh
mov byte [ebp - 0x3e], cl
xor ch, dh
mov byte [ebp - 0x3c], ah
xor dl, dh
mov byte [ebp - 0x3b], ch
sub esp, 0x18
mov byte [ebp - 0x3d], dl
mov edx, esp
lea ecx, [ebp - 0x3f]
xorps xmm0, xmm0
lea eax, [ecx + 1]
mov dword [ebp - 0x48], eax
movups xmmword [edx], xmm0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100569f0
sub ecx, dword [ebp - 0x48]
lea eax, [ebp - 0x3f]
push ecx
push eax
mov ecx, edx
call fcn.10002540
lea eax, [ebp - 0x60]
push eax
call fcn.1000ae50
add esp, 0x24
mov byte [ebp - 4], 1
cmp dword [eax + 0x14], 0xf
mov ecx, dword [eax + 0x10]
jbe 0x10056a21
mov eax, dword [eax]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.100072e0
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0x4c]
cmp ecx, 0xf
jbe 0x10056a63
mov edx, dword [ebp - 0x60]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10056a59
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10056f0e
push ecx
push edx
call fcn.1007fa46
add esp, 8
mov ecx, dword [ebp - 0x38]
test ecx, ecx
je 0x10056b65
cmp ecx, 0xa
jae 0x10056a8c
mov dl, 0x45
mov byte [ebp - 0x2a], 0
mov al, 0x75
mov byte [ebp - 0x2c], dl
xor al, dl
mov byte [ebp - 0x2a], 0
mov byte [ebp - 0x2b], al
lea eax, [ebp - 0x2b]
jmp 0x10056a99
mov word [ebp - 0x30], 0x3e
lea eax, [ebp - 0x2f]
mov byte [ebp - 0x2f], 0
push ecx
push eax
mov dh, 0x3e
mov byte [ebp - 0x3a], 0
mov al, 0x1b
mov byte [ebp - 0x40], dh
mov dl, al
mov byte [ebp - 0x3a], 0
mov cl, 0x4d
mov ah, 0x4b
mov ch, 4
xor al, dh
xor cl, dh
mov byte [ebp - 0x3f], al
xor ah, dh
mov byte [ebp - 0x3e], cl
xor ch, dh
mov byte [ebp - 0x3c], ah
xor dl, dh
mov byte [ebp - 0x3b], ch
sub esp, 0x18
mov byte [ebp - 0x3d], dl
mov edx, esp
lea ecx, [ebp - 0x3f]
xorps xmm0, xmm0
lea eax, [ecx + 1]
mov dword [ebp - 0x38], eax
movups xmmword [edx], xmm0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10056af0
sub ecx, dword [ebp - 0x38]
lea eax, [ebp - 0x3f]
push ecx
push eax
mov ecx, edx
call fcn.10002540
lea eax, [ebp - 0x60]
push eax
call fcn.1000ae50
add esp, 0x24
mov byte [ebp - 4], 2
cmp dword [eax + 0x14], 0xf
mov ecx, dword [eax + 0x10]
jbe 0x10056b21
mov eax, dword [eax]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.100072e0
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0x4c]
cmp ecx, 0xf
jbe 0x10056ba6
mov edx, dword [ebp - 0x60]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10056b59
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10056f13
push ecx
push edx
call fcn.1007fa46
add esp, 8
jmp 0x10056ba6
mov ah, 0x1b
mov byte [ebp - 0x34], 0
mov al, 0x2b
mov byte [ebp - 0x38], ah
mov cl, al
mov byte [ebp - 0x34], 0
xor cl, ah
mov dl, 0x21
xor al, ah
mov byte [ebp - 0x36], cl
xor dl, ah
mov byte [ebp - 0x37], al
lea ecx, [ebp - 0x37]
mov byte [ebp - 0x35], dl
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10056b90
sub ecx, edx
lea eax, [ebp - 0x37]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.100072e0
test esi, esi
je 0x10056ca4
cmp esi, 0xa
jae 0x10056bcc
mov cl, 0xa
mov byte [ebp - 0x2a], 0
mov al, 0x3a
mov byte [ebp - 0x2c], cl
xor al, cl
mov byte [ebp - 0x2a], 0
mov byte [ebp - 0x2b], al
lea eax, [ebp - 0x2b]
jmp 0x10056bd9
mov word [ebp - 0x30], 0x59
lea eax, [ebp - 0x2f]
mov byte [ebp - 0x2f], 0
push esi
push eax
mov dh, 0x74
mov byte [ebp - 0x3a], 0
mov al, 0x51
mov byte [ebp - 0x40], dh
mov dl, al
mov byte [ebp - 0x3a], 0
mov cl, 7
mov ch, 0x4e
xor cl, dh
xor ch, dh
mov ah, 1
mov byte [ebp - 0x3e], cl
xor al, dh
mov byte [ebp - 0x3b], ch
xor dl, dh
mov byte [ebp - 0x3f], al
xor ah, dh
mov byte [ebp - 0x3d], dl
sub esp, 0x18
mov byte [ebp - 0x3c], ah
mov edx, esp
lea ecx, [ebp - 0x3f]
xorps xmm0, xmm0
lea esi, [ecx + 1]
movups xmmword [edx], xmm0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10056c30
sub ecx, esi
lea eax, [ebp - 0x3f]
push ecx
push eax
mov ecx, edx
call fcn.10002540
lea eax, [ebp - 0x60]
push eax
call fcn.1000ae50
add esp, 0x24
mov byte [ebp - 4], 3
cmp dword [eax + 0x14], 0xf
mov ecx, dword [eax + 0x10]
jbe 0x10056c60
mov eax, dword [eax]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.100072e0
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0x4c]
cmp ecx, 0xf
jbe 0x10056ce6
mov edx, dword [ebp - 0x60]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10056c98
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10056f18
push ecx
push edx
call fcn.1007fa46
add esp, 8
jmp 0x10056ce6
mov ah, 0x6a
mov byte [ebp - 0x34], 0
mov al, 0x5a
mov byte [ebp - 0x38], ah
mov cl, al
mov byte [ebp - 0x34], 0
xor cl, ah
mov dl, 0x50
xor al, ah
mov byte [ebp - 0x36], cl
xor dl, ah
mov byte [ebp - 0x37], al
lea ecx, [ebp - 0x37]
mov byte [ebp - 0x35], dl
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10056cd0
sub ecx, edx
lea eax, [ebp - 0x37]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.100072e0
test edi, edi
je 0x10056dd7
cmp edi, 0xa
jae 0x10056d0c
mov cl, 0x11
mov byte [ebp - 0x2a], 0
mov al, 0x21
mov byte [ebp - 0x2c], cl
xor al, cl
mov byte [ebp - 0x2a], 0
mov byte [ebp - 0x2b], al
lea eax, [ebp - 0x2b]
jmp 0x10056d19
mov word [ebp - 0x30], 0x62
lea eax, [ebp - 0x2f]
mov byte [ebp - 0x2f], 0
push edi
push eax
mov ch, 0x44
mov byte [ebp - 0x43], 0
mov al, 0x61
mov byte [ebp - 0x48], ch
mov dl, al
mov byte [ebp - 0x43], 0
mov cl, 0x37
xor dl, ch
mov ah, 0x31
mov byte [ebp - 0x45], dl
xor al, ch
xor cl, ch
xor ah, ch
mov byte [ebp - 0x46], cl
sub esp, 0x18
mov byte [ebp - 0x47], al
mov edx, esp
mov byte [ebp - 0x44], ah
xorps xmm0, xmm0
lea ecx, [ebp - 0x47]
lea esi, [ecx + 1]
movups xmmword [edx], xmm0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10056d63
sub ecx, esi
lea eax, [ebp - 0x47]
push ecx
push eax
mov ecx, edx
call fcn.10002540
lea eax, [ebp - 0x60]
push eax
call fcn.1000ae50
add esp, 0x24
mov byte [ebp - 4], 4
cmp dword [eax + 0x14], 0xf
mov ecx, dword [eax + 0x10]
jbe 0x10056d93
mov eax, dword [eax]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.100072e0
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0x4c]
cmp ecx, 0xf
jbe 0x10056e0e
mov edx, dword [ebp - 0x60]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10056dcb
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10056f1d
push ecx
push edx
call fcn.1007fa46
add esp, 8
jmp 0x10056e0e
mov dl, 0x66
mov byte [ebp - 0x29], 0
mov al, 0x56
mov byte [ebp - 0x2c], dl
mov cl, al
mov byte [ebp - 0x29], 0
xor al, dl
xor cl, dl
mov byte [ebp - 0x2a], cl
lea ecx, [ebp - 0x2b]
mov byte [ebp - 0x2b], al
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10056df8
sub ecx, edx
lea eax, [ebp - 0x2b]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.100072e0
cmp dword [ebp - 0x14], 0xf
lea eax, [ebp - 0x28]
mov dl, 9
mov byte [ebp - 0x29], 0
cmova eax, dword [ebp - 0x28]
mov cl, 0x7a
push eax
xor cl, dl
mov byte [ebp - 0x2c], dl
mov al, 0x2c
mov byte [ebp - 0x2a], cl
xor al, dl
mov byte [ebp - 0x29], 0
sub esp, 0x18
mov byte [ebp - 0x2b], al
mov edx, esp
lea ecx, [ebp - 0x2b]
xorps xmm0, xmm0
lea esi, [ecx + 1]
movups xmmword [edx], xmm0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10056e54
sub ecx, esi
lea eax, [ebp - 0x2b]
push ecx
push eax
mov ecx, edx
call fcn.10002540
lea eax, [ebp - 0x60]
push eax
call fcn.1000ae50
add esp, 0x20
mov ecx, dword [ebp - 0x64]
mov edx, eax
mov byte [ebp - 4], 5
mov ecx, dword [ecx + 0x18]
call fcn.100182e0
mov ecx, dword [ebp - 0x4c]
cmp ecx, 0xf
jbe 0x10056eb6
mov edx, dword [ebp - 0x60]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10056eac
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10056f22
push ecx
push edx
call fcn.1007fa46
add esp, 8
mov ecx, dword [ebp - 0x14]
cmp ecx, 0xf
jbe 0x10056ef3
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10056edc
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10056f27
push ecx
push edx
call fcn.1007fa46
add esp, 8
jmp 0x10056ef3
mov ecx, esi
mov byte [esi + 0x34], 0
call fcn.10057040
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1007f9e5
mov esp, ebp
pop ebp
ret
call fcn.10084bdf
call fcn.10084bdf
call fcn.10084bdf
call fcn.10084bdf
call fcn.10084bdf
call fcn.10084bdf
int3