Function at 0x10003df0
Capabilities:
Get number of processors
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x10049c11
mov eax, dword fs:[0]
push eax
sub esp, 0xfc
push ebx
push ebp
push esi
push edi
mov eax, dword [0x10056024]
xor eax, esp
push eax
lea eax, [esp + 0x110]
mov dword fs:[0], eax
mov ebp, ecx
xor esi, esi
push esi
push esi
xor ecx, ecx
xor eax, eax
lea ebx, [esp + 0x2c]
mov dword [esp + 0x6c], esi
mov dword [esp + 0x70], esi
mov dword [esp + 0x20], esi
mov dword [esp + 0x24], esi
mov dword [esp + 0x30], esi
mov dword [esp + 0x34], esi
mov dword [esp + 0x28], esi
mov dword [esp + 0x2c], esi
call fcn.10002ae0
mov ecx, dword [esp + 0x20]
mov eax, 0xbce4217d
imul ecx
sar edx, 0x12
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0xf4240
add ecx, eax
mov eax, 0x431bde83
imul ecx
sar edx, 0x12
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0xf4240
mov edx, ecx
sub edx, eax
mov eax, 0x97247453
imul edx
sar edx, 0xc
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x2710
add ecx, eax
mov dword [esp + 0x20], ecx
lea eax, [esi + 1]
lea ecx, [esp + 0x20]
call fcn.10002f60
push 1
push 1
lea ebx, [esp + 0x28]
call fcn.10003010
mov edx, dword [ebp]
mov eax, dword [edx + 0x50]
mov ecx, ebp
mov dword [esp + 0x40], esi
call eax
add eax, 0xffffffff
cmp eax, 4
ja case.default.0x10003ede
jmp dword [eax*4 + 0x10005098]
mov edx, dword [ebp]
mov edx, dword [edx + 0x78]
lea eax, [esp + 0x8c]
xor ebx, ebx
push eax
lea ecx, [esp + 0x80]
push ecx
mov ecx, ebp
mov dword [esp + 0x84], ebx
mov dword [esp + 0x88], ebx
mov dword [esp + 0x94], ebx
mov dword [esp + 0x98], ebx
call edx
lea ecx, [esp + 0x4c]
push ecx
mov ecx, eax
call fcn.10006370
mov dword [esp + 0x118], ebx
mov edx, dword [ebp]
mov eax, dword [edx + 0x68]
mov ecx, ebp
call eax
sub eax, 1
je 0x10004415
sub eax, 1
jne 0x10004625
mov eax, dword [esp + 0x50]
mov dword [esp + 0x70], eax
mov eax, dword [eax]
lea edi, [esp + 0x4c]
mov esi, eax
mov dword [esp + 0x30], edi
mov dword [esp + 0x34], esi
cmp edi, ebx
mov ebp, dword [sym.imp.MSVCR80.dll__invalid_parameter_noinfo]
je 0x10003f76
lea ecx, [esp + 0x4c]
cmp edi, ecx
je 0x10003f78
call ebp
cmp esi, dword [esp + 0x70]
je 0x10004625
cmp edi, ebx
jne 0x10003f88
call ebp
cmp esi, dword [edi + 4]
jne 0x10003f8f
call ebp
mov edx, dword [esi + 8]
mov eax, dword [esi + 0xc]
lea edi, [esp + 0xf4]
mov dword [esp + 0x84], edx
mov dword [esp + 0x88], eax
call fcn.10003290
cmp eax, ebx
je 0x10003fb8
lea ecx, [eax + 4]
jmp 0x10003fba
xor ecx, ecx
mov ecx, dword [ecx]
mov dword [esp + 0x1c], ecx
mov edx, dword [eax]
mov dword [esp + 0x18], edx
mov eax, 0x68db8bad
imul ecx
sar edx, 0xc
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x2710
mov edx, ecx
sub edx, eax
mov eax, 0x51eb851f
imul edx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, 0x3b
sub edx, eax
imul edx, edx, 0x64
add ecx, edx
mov eax, 0x51eb851f
imul ecx
mov ecx, dword [esp + 0x7c]
mov ebp, dword [sym.imp.MSVCR80.dll__localtime64_s]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x80]
imul eax, eax, 0x64
mov dword [esp + 0x1c], eax
xor eax, eax
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], eax
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], eax
lea eax, [esp + 0x98]
mov dword [esp + 0x98], ecx
push eax
lea ecx, [esp + 0xa4]
push ecx
mov dword [esp + 0xa4], edx
call ebp
add esp, 8
lea edi, [esp + 0xa0]
lea eax, [esp + 0x28]
call fcn.100033a0
mov edi, dword [esp + 0x18]
mov eax, 0x68db8bad
imul edi
sar edx, 0xc
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
lea esi, [esp + 0x28]
call fcn.10002ef0
imul ebx, ebx, 0x2710
mov ecx, edi
sub ecx, ebx
mov eax, 0x51eb851f
imul ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov ecx, esi
call fcn.10002f60
mov eax, 0x51eb851f
imul edi
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x64
push 1
sub edi, eax
push edi
mov ebx, esi
call fcn.10003010
mov ecx, dword [esp + 0x2c]
mov eax, 0x68db8bad
imul ecx
sar edx, 0xc
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x2710
mov edx, ecx
sub edx, eax
mov eax, 0x51eb851f
imul edx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, 0x3b
sub edx, eax
imul edx, edx, 0x64
add ecx, edx
mov eax, 0x51eb851f
imul ecx
mov ecx, dword [esp + 0x8c]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x90]
imul eax, eax, 0x64
mov dword [esp + 0x2c], eax
lea eax, [esp + 0xc4]
mov dword [esp + 0xc4], ecx
push eax
lea ecx, [esp + 0xa4]
push ecx
mov dword [esp + 0xd0], edx
call ebp
add esp, 8
lea edi, [esp + 0xa0]
lea eax, [esp + 0x38]
call fcn.100033a0
mov edi, dword [esp + 0x18]
mov eax, 0x68db8bad
imul edi
sar edx, 0xc
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
lea esi, [esp + 0x38]
call fcn.10002ef0
imul ebx, ebx, 0x2710
mov ecx, edi
sub ecx, ebx
mov eax, 0x51eb851f
imul ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov ecx, esi
call fcn.10002f60
mov eax, 0x51eb851f
imul edi
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x64
push 1
sub edi, eax
push edi
mov ebx, esi
call fcn.10003010
mov ecx, dword [esp + 0x3c]
mov eax, 0x68db8bad
imul ecx
sar edx, 0xc
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x2710
mov edx, ecx
sub edx, eax
mov eax, 0x51eb851f
imul edx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, 0x3b
sub edx, eax
imul edx, edx, 0x64
add ecx, edx
mov eax, 0x51eb851f
imul ecx
mov edi, dword [esp + 0x84]
sar edx, 5
imul edi, edi, 0x57e40
mov eax, edx
mov ecx, dword [esp + 0x38]
shr eax, 0x1f
add eax, edx
mov ebp, eax
mov eax, 0x431bde83
imul ebp, ebp, 0x64
imul dword [esp + 0x2c]
sar edx, 0x12
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
lea edx, [esp + 0x28]
mov eax, esi
push edx
push eax
lea esi, [esp + 0x10c]
mov dword [esp + 0x44], ebp
mov dword [esp + 0x4c], ecx
mov dword [esp + 0x60], edi
call fcn.10003430
add eax, 4
call fcn.10002b70
cdq
idiv edi
mov edi, eax
imul edi, dword [esp + 0x84]
mov eax, 0x431bde83
imul ebp
sar edx, 0x12
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov edx, ebx
imul edx, edx, 0xf4240
sub edi, ecx
mov ecx, dword [esp + 0x2c]
sub ecx, edx
add edi, ebx
mov eax, 0x68db8bad
imul edi, edi, 0xf4240
imul ecx
sar edx, 0xc
add edi, ebp
mov ebp, edx
shr ebp, 0x1f
add ebp, edx
mov eax, 0x431bde83
imul edi
sar edx, 0x12
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0xf4240
mov ecx, edi
sub ecx, eax
mov eax, 0x68db8bad
imul ecx
sar edx, 0xc
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov edx, ebp
mov eax, dword [esp + 0x18]
sub edx, ecx
imul edx, edx, 0x2710
add edi, edx
cmp eax, dword [esp + 0x28]
mov dword [esp + 0x48], edi
jg 0x10004300
mov edx, dword [esp + 0x28]
cmp eax, edx
mov ecx, dword [esp + 0x1c]
jne 0x10004359
cmp ecx, dword [esp + 0x2c]
jle 0x10004357
lea eax, [esp + 0x28]
push eax
lea ecx, [esp + 0x1c]
push ecx
lea esi, [esp + 0x64]
call fcn.10003430
lea eax, [esp + 0x60]
call fcn.10002b70
cdq
idiv dword [esp + 0x58]
push 0
mov esi, eax
xor eax, eax
test edx, edx
setne al
lea ecx, [eax + esi - 1]
imul ecx, dword [esp + 0x88]
add ecx, ebx
push ecx
mov ecx, 0x3b
mov eax, ebp
lea ebx, [esp + 0x24]
call fcn.10002ae0
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0x28]
cmp eax, edx
jl 0x10004367
jne 0x1000439a
mov edx, dword [esp + 0x2c]
cmp ecx, edx
jl 0x10004367
jne 0x1000439a
mov ecx, dword [esp + 0x38]
mov eax, 0x51eb851f
imul ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x64
mov dword [esp + 0x18], ecx
sub ecx, eax
push 1
sub ecx, 1
push ecx
lea ebx, [esp + 0x20]
mov dword [esp + 0x24], edi
call fcn.10003010
jmp 0x100043b5
mov edx, dword [esp + 0x38]
cmp eax, edx
jg 0x100043a8
jne 0x100043b5
cmp ecx, edi
jle 0x100043b5
lea esi, [esp + 0x44]
lea eax, [esp + 0x18]
call fcn.10003400
lea esi, [esp + 0x18]
call fcn.10003370
test al, al
je 0x100043ef
mov ecx, dword [esp + 0x18]
mov eax, dword [esp + 0x20]
cmp ecx, eax
jg 0x100043da
jne 0x100043ef
mov ecx, dword [esp + 0x1c]
cmp ecx, dword [esp + 0x24]
jle 0x100043ef
lea esi, [esp + 0x18]
lea eax, [esp + 0x20]
call fcn.10003400
mov dword [esp + 0x40], 1
mov esi, dword [esp + 0x34]
mov edx, dword [esp + 0x30]
cmp esi, dword [edx + 4]
jne 0x10004402
call dword [sym.imp.MSVCR80.dll__invalid_parameter_noinfo]
mov eax, dword [esi]
mov edi, dword [esp + 0x30]
mov dword [esp + 0x34], eax
mov esi, eax
xor ebx, ebx
jmp 0x10003f64
mov eax, dword [esp + 0x50]
mov ebp, dword [sym.imp.MSVCR80.dll__localtime64_s]
mov dword [esp + 0x60], eax
mov eax, dword [eax]
lea ecx, [esp + 0x4c]
mov esi, ecx
mov edi, eax
mov dword [esp + 0x38], esi
mov dword [esp + 0x3c], edi
test esi, esi
mov ebx, dword [sym.imp.MSVCR80.dll__invalid_parameter_noinfo]
je 0x10004447
lea ecx, [esp + 0x4c]
cmp esi, ecx
je 0x10004449
call ebx
cmp edi, dword [esp + 0x60]
je 0x10004625
test esi, esi
jne 0x10004459
call ebx
cmp edi, dword [esi + 4]
jne 0x10004460
call ebx
mov eax, dword [esp + 0x3c]
mov esi, dword [eax + 8]
mov ebx, dword [eax + 0xc]
lea edi, [esp + 0xdc]
call fcn.10003290
test eax, eax
je 0x1000447f
lea ecx, [eax + 4]
jmp 0x10004481
xor ecx, ecx
mov edx, dword [ecx]
mov dword [esp + 0x1c], edx
mov eax, dword [eax]
lea ecx, [esp + 0x44]
push ecx
lea edx, [esp + 0xa4]
push edx
mov dword [esp + 0x20], eax
mov dword [esp + 0x4c], esi
mov dword [esp + 0x50], ebx
call ebp
add esp, 8
lea edi, [esp + 0xa0]
lea eax, [esp + 0x28]
call fcn.100033a0
mov edi, dword [esp + 0x2c]
mov ecx, dword [esp + 0x1c]
mov eax, 0x431bde83
imul edi
sar edx, 0x12
mov esi, edx
shr esi, 0x1f
add esi, edx
mov eax, 0x431bde83
imul ecx
sar edx, 0x12
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, esi
imul esi, esi, 0xf4240
sub edx, eax
imul edx, edx, 0xf4240
add ecx, edx
mov eax, 0x431bde83
imul ecx
sar edx, 0x12
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0xf4240
mov edx, ecx
sub edx, eax
mov eax, 0x68db8bad
imul edx
sar edx, 0xc
mov eax, edx
shr eax, 0x1f
add eax, edx
mov ebx, eax
sub edi, esi
mov eax, 0x68db8bad
imul edi
sar edx, 0xc
mov eax, edx
shr eax, 0x1f
add eax, edx
sub eax, ebx
imul eax, eax, 0x2710
add ecx, eax
mov eax, 0x68db8bad
imul ecx
sar edx, 0xc
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x2710
mov edx, ecx
sub edx, eax
mov eax, 0x51eb851f
imul edx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, 0x3b
sub edx, eax
imul edx, edx, 0x64
add ecx, edx
mov eax, 0x51eb851f
imul ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x64
lea esi, [esp + 0x18]
mov dword [esp + 0x1c], eax
call fcn.10003370
test al, al
mov ecx, dword [esp + 0x18]
mov esi, dword [esp + 0x20]
je 0x100045b3
cmp ecx, esi
jg 0x100045ec
jne 0x100045b3
mov edx, dword [esp + 0x1c]
cmp edx, dword [esp + 0x24]
jg 0x100045ec
mov eax, 0x51eb851f
imul ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x64
sub ecx, eax
push 1
sub ecx, 1
push ecx
lea ebx, [esp + 0x20]
call fcn.10003010
mov eax, dword [esp + 0x18]
cmp eax, esi
jg 0x100045ec
jne 0x10004601
mov ecx, dword [esp + 0x24]
cmp dword [esp + 0x1c], ecx
jle 0x10004601
lea esi, [esp + 0x18]
lea eax, [esp + 0x20]
call fcn.10003400
mov dword [esp + 0x40], 1
mov esi, dword [esp + 0x3c]
mov edx, dword [esp + 0x38]
cmp esi, dword [edx + 4]
jne 0x10004614
call dword [sym.imp.MSVCR80.dll__invalid_parameter_noinfo]
mov eax, dword [esi]
mov esi, dword [esp + 0x38]
mov dword [esp + 0x3c], eax
mov edi, eax
jmp 0x10004435
lea esi, [esp + 0x4c]
call fcn.10006620
cmp dword [esp + 0x40], 0
je case.default.0x10003ede
lea esi, [esp + 0x20]
call fcn.10003550
mov dword [esp + 0x64], eax
mov dword [esp + 0x68], edx
mov eax, dword [esp + 0x64]
mov edx, dword [esp + 0x68]
mov ecx, dword [esp + 0x110]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp]
mov eax, dword [edx + 0x7c]
mov ecx, ebp
call eax
lea ecx, [esp + 0x4c]
push ecx
mov ecx, eax
call fcn.10006510
mov dword [esp + 0x118], 1
mov edx, dword [ebp]
mov eax, dword [edx + 0x6c]
mov ecx, ebp
call eax
sub eax, 1
jne 0x100048f7
mov eax, dword [esp + 0x50]
mov dword [esp + 0x60], eax
mov eax, dword [eax]
lea edi, [esp + 0x4c]
mov esi, eax
mov dword [esp + 0x30], edi
mov dword [esp + 0x34], esi
test edi, edi
mov ebx, dword [sym.imp.MSVCR80.dll__invalid_parameter_noinfo]
je 0x100046c3
lea ecx, [esp + 0x4c]
cmp edi, ecx
je 0x100046c5
call ebx
cmp esi, dword [esp + 0x60]
je 0x100048f7
test edi, edi
jne 0x100046d5
call ebx
cmp esi, dword [edi + 4]
jne 0x100046dc
call ebx
mov edx, dword [esi + 0xc]
mov ebp, dword [esi + 8]
mov ebx, dword [esi + 0x10]
mov esi, dword [esi + 0x14]
lea edi, [esp + 0xfc]
mov dword [esp + 0xc8], edx
call fcn.10003290
test eax, eax
je 0x10004704
lea ecx, [eax + 4]
jmp 0x10004706
xor ecx, ecx
mov ecx, dword [ecx]
mov dword [esp + 0x1c], ecx
mov edx, dword [eax]
lea eax, [esp + 0x44]
push eax
lea ecx, [esp + 0xa4]
push ecx
mov dword [esp + 0x20], edx
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x50], esi
call dword [sym.imp.MSVCR80.dll__localtime64_s]
add esp, 8
lea edi, [esp + 0xa0]
lea eax, [esp + 0x28]
call fcn.100033a0
lea eax, [esp + 0x18]
call fcn.10002d60
test eax, eax
mov ebx, 7
je 0x10004754
mov ebx, eax
mov edi, dword [esp + 0x2c]
mov ecx, dword [esp + 0x1c]
mov eax, 0x431bde83
imul edi
sar edx, 0x12
mov esi, edx
shr esi, 0x1f
add esi, edx
mov eax, 0x431bde83
imul ecx
sar edx, 0x12
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, esi
imul esi, esi, 0xf4240
sub edx, eax
imul edx, edx, 0xf4240
add ecx, edx
mov eax, 0x431bde83
imul ecx
sar edx, 0x12
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0xf4240
mov edx, ecx
sub edx, eax
mov eax, 0x68db8bad
imul edx
sar edx, 0xc
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [esp + 0x58], eax
sub edi, esi
mov eax, 0x68db8bad
imul edi
sar edx, 0xc
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x58]
sub eax, edx
imul eax, eax, 0x2710
add ecx, eax
mov eax, 0x68db8bad
imul ecx
sar edx, 0xc
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x2710
mov edx, ecx
sub edx, eax
mov eax, 0x51eb851f
imul edx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, 0x3b
sub edx, eax
imul edx, edx, 0x64
add ecx, edx
mov eax, 0x51eb851f
imul ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x64
cmp ebx, ebp
mov dword [esp + 0x1c], eax
jne 0x1000485c
lea esi, [esp + 0x18]
call fcn.10003370
test al, al
je 0x1000485c
mov ecx, dword [esp + 0x18]
mov eax, dword [esp + 0x20]
cmp ecx, eax
jg 0x10004890
jne 0x10004860
mov edx, dword [esp + 0x24]
cmp dword [esp + 0x1c], edx
jg 0x10004890
jmp 0x10004860
mov ecx, dword [esp + 0x18]
mov eax, 0x51eb851f
imul ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x64
sub ecx, eax
sub ecx, ebx
cmp ebx, ebp
push 1
lea ebx, [esp + 0x1c]
jbe 0x10004886
add ecx, ebp
jmp 0x1000488a
lea ecx, [ecx + ebp - 7]
push ecx
call fcn.10003010
lea edi, [esp + 0x6c]
call fcn.10003290
mov ecx, dword [eax]
mov edx, dword [esp + 0x18]
cmp edx, ecx
mov esi, dword [esp + 0x1c]
jl 0x100048ae
jne 0x100048d3
cmp esi, dword [eax + 4]
jge 0x100048d3
mov eax, dword [esp + 0x20]
cmp edx, eax
jg 0x100048be
jne 0x100048d3
cmp esi, dword [esp + 0x24]
jle 0x100048d3
lea esi, [esp + 0x18]
lea eax, [esp + 0x20]
call fcn.10003400
mov dword [esp + 0x40], 1
mov esi, dword [esp + 0x34]
mov edx, dword [esp + 0x30]
cmp esi, dword [edx + 4]
jne 0x100048e6
call dword [sym.imp.MSVCR80.dll__invalid_parameter_noinfo]
mov eax, dword [esi]
mov edi, dword [esp + 0x30]
mov dword [esp + 0x34], eax
mov esi, eax
jmp 0x100046b1
lea esi, [esp + 0x4c]
call fcn.10006620
jmp 0x1000462e
mov edx, dword [ebp]
mov eax, dword [edx + 0x80]
mov ecx, ebp
call eax
lea ecx, [esp + 0x4c]
push ecx
mov ecx, eax
call fcn.10006510
mov dword [esp + 0x118], 2
mov edx, dword [ebp]
mov eax, dword [edx + 0x70]
mov ecx, ebp
call eax
sub eax, 1
je 0x10004bd1
sub eax, 1
jne 0x10004eed
mov eax, dword [esp + 0x50]
mov dword [esp + 0x60], eax
mov eax, dword [eax]
lea esi, [esp + 0x4c]
mov edi, eax
mov dword [esp + 0x30], esi
mov dword [esp + 0x34], edi
test esi, esi
mov ebx, dword [sym.imp.MSVCR80.dll__invalid_parameter_noinfo]
je 0x1000496f
lea ecx, [esp + 0x4c]
cmp esi, ecx
je 0x10004971
call ebx
cmp edi, dword [esp + 0x60]
je 0x10004eed
test esi, esi
jne 0x10004981
call ebx
cmp edi, dword [esi + 4]
jne 0x10004988
call ebx
mov ebx, dword [edi + 0xc]
mov edx, dword [edi + 0x14]
mov ebp, dword [edi + 8]
mov esi, dword [edi + 0x10]
mov dword [esp + 0x78], edx
mov eax, 0x24924925
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 2
lea ecx, [eax*8]
sub ecx, eax
neg ecx
lea edi, [esp + 0xec]
add ebx, ecx
call fcn.10003290
test eax, eax
je 0x100049cc
lea ecx, [eax + 4]
jmp 0x100049ce
xor ecx, ecx
mov edx, dword [ecx]
mov ecx, dword [esp + 0x78]
mov dword [esp + 0x1c], edx
mov eax, dword [eax]
lea edx, [esp + 0x44]
mov dword [esp + 0x18], eax
push edx
lea eax, [esp + 0xa4]
push eax
mov dword [esp + 0x4c], esi
mov dword [esp + 0x50], ecx
call dword [sym.imp.MSVCR80.dll__localtime64_s]
add esp, 8
lea edi, [esp + 0xa0]
lea eax, [esp + 0x28]
call fcn.100033a0
mov ecx, dword [esp + 0x18]
mov eax, 0x68db8bad
imul ecx
sar edx, 0xc
mov eax, edx
shr eax, 0x1f
add eax, edx
push eax
imul eax, eax, 0x2710
sub ecx, eax
mov eax, 0x51eb851f
imul ecx
sar edx, 5
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
push ecx
push ebp
mov eax, ebx
lea ecx, [esp + 0x24]
call fcn.10002e20
mov edi, dword [esp + 0x2c]
mov ecx, dword [esp + 0x1c]
mov eax, 0x431bde83
imul edi
sar edx, 0x12
mov esi, edx
shr esi, 0x1f
add esi, edx
mov eax, 0x431bde83
imul ecx
sar edx, 0x12
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, esi
imul esi, esi, 0xf4240
sub edx, eax
imul edx, edx, 0xf4240
add ecx, edx
mov eax, 0x431bde83
imul ecx
sar edx, 0x12
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0xf4240
mov edx, ecx
sub edx, eax
mov eax, 0x68db8bad
imul edx
sar edx, 0xc
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [esp + 0x58], eax
sub edi, esi
mov eax, 0x68db8bad
imul edi
sar edx, 0xc
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x58]
sub eax, edx
imul eax, eax, 0x2710
add ecx, eax
mov eax, 0x68db8bad
imul ecx
sar edx, 0xc
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x2710
mov edx, ecx
sub edx, eax
mov eax, 0x51eb851f
imul edx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, 0x3b
sub edx, eax
imul edx, edx, 0x64
add ecx, edx
mov eax, 0x51eb851f
imul ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x64
lea esi, [esp + 0x18]
mov dword [esp + 0x1c], eax
call fcn.10003370
test al, al
mov ecx, dword [esp + 0x18]
mov esi, dword [esp + 0x20]
je 0x10004b4a
cmp ecx, esi
jg 0x10004b98
jne 0x10004b4a
mov edx, dword [esp + 0x1c]
cmp edx, dword [esp + 0x24]
jg 0x10004b98
mov eax, 0x68db8bad
imul ecx
sar edx, 0xc
mov eax, edx
shr eax, 0x1f
add eax, edx
push eax
imul eax, eax, 0x2710
sub ecx, eax
mov eax, 0x51eb851f
imul ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
lea ecx, [edx + eax - 1]
push ecx
push ebp
mov eax, ebx
lea ecx, [esp + 0x24]
call fcn.10002e20
mov eax, dword [esp + 0x18]
cmp eax, esi
jg 0x10004b98
jne 0x10004bad
mov edx, dword [esp + 0x24]
cmp dword [esp + 0x1c], edx
jle 0x10004bad
lea esi, [esp + 0x18]
lea eax, [esp + 0x20]
call fcn.10003400
mov dword [esp + 0x40], 1
mov esi, dword [esp + 0x34]
mov eax, dword [esp + 0x30]
cmp esi, dword [eax + 4]
jne 0x10004bc0
call dword [sym.imp.MSVCR80.dll__invalid_parameter_noinfo]
mov ecx, dword [esi]
mov esi, dword [esp + 0x30]
mov dword [esp + 0x34], ecx
mov edi, ecx
jmp 0x1000495d
mov eax, dword [esp + 0x50]
mov dword [esp + 0x60], eax
mov eax, dword [eax]
lea edi, [esp + 0x4c]
mov esi, eax
mov dword [esp + 0x30], edi
mov dword [esp + 0x34], esi
test edi, edi
mov ebx, dword [sym.imp.MSVCR80.dll__invalid_parameter_noinfo]
je 0x10004bfb
lea edx, [esp + 0x4c]
cmp edi, edx
je 0x10004bfd
call ebx
cmp esi, dword [esp + 0x60]
je 0x10004eed
test edi, edi
jne 0x10004c0d
call ebx
cmp esi, dword [edi + 4]
jne 0x10004c14
call ebx
mov eax, dword [esi + 0xc]
mov ebp, dword [esi + 8]
mov ebx, dword [esi + 0x10]
mov esi, dword [esi + 0x14]
lea edi, [esp + 0xd4]
mov dword [esp + 0x70], eax
call fcn.10003290
test eax, eax
je 0x10004c39
lea ecx, [eax + 4]
jmp 0x10004c3b
xor ecx, ecx
mov ecx, dword [ecx]
mov dword [esp + 0x1c], ecx
mov edx, dword [eax]
lea eax, [esp + 0x44]
push eax
lea ecx, [esp + 0xa4]
push ecx
mov dword [esp + 0x20], edx
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x50], esi
call dword [sym.imp.MSVCR80.dll__localtime64_s]
add esp, 8
lea edi, [esp + 0xa0]
lea eax, [esp + 0x28]
call fcn.100033a0
cmp ebp, 0x20
jae 0x10004ce2
mov bl, byte [0x100564c9]
mov esi, dword [esp + 0x18]
mov eax, 0x68db8bad
imul esi
sar edx, 0xc
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov edx, ecx
imul edx, edx, 0x2710
sub esi, edx
mov eax, 0x51eb851f
imul esi
sar edx, 5
mov esi, edx
shr esi, 0x1f
add esi, edx
cmp esi, 2
jne 0x10004cc6
call fcn.10002d10
test al, al
jne 0x10004cc6
movzx eax, bl
sub eax, 1
jmp 0x10004ccd
movzx eax, byte [esi + 0x100564c7]
movzx eax, al
cmp eax, ebp
jae 0x10004ce2
lea eax, [esi - 1]
lea ecx, [esp + 0x18]
call fcn.10002f60
jmp 0x10004c80
push 0
push ebp
lea ebx, [esp + 0x20]
call fcn.10003010
mov edi, dword [esp + 0x2c]
mov ecx, dword [esp + 0x1c]
mov eax, 0x431bde83
imul edi
sar edx, 0x12
mov esi, edx
shr esi, 0x1f
add esi, edx
mov eax, 0x431bde83
imul ecx
sar edx, 0x12
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, esi
imul esi, esi, 0xf4240
sub edx, eax
imul edx, edx, 0xf4240
add ecx, edx
mov eax, 0x431bde83
imul ecx
sar edx, 0x12
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0xf4240
mov edx, ecx
sub edx, eax
mov eax, 0x68db8bad
imul edx
sar edx, 0xc
mov eax, edx
shr eax, 0x1f
add eax, edx
mov ebx, eax
sub edi, esi
mov eax, 0x68db8bad
imul edi
sar edx, 0xc
mov eax, edx
shr eax, 0x1f
add eax, edx
sub eax, ebx
imul eax, eax, 0x2710
add ecx, eax
mov eax, 0x68db8bad
imul ecx
sar edx, 0xc
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x2710
mov edx, ecx
sub edx, eax
mov eax, 0x51eb851f
imul edx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, 0x3b
sub edx, eax
imul edx, edx, 0x64
add ecx, edx
mov eax, 0x51eb851f
imul ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x64
lea esi, [esp + 0x18]
mov dword [esp + 0x1c], eax
call fcn.10003370
mov ecx, dword [esp + 0x18]
mov edi, dword [esp + 0x20]
test al, al
je 0x10004df2
cmp ecx, edi
jg 0x10004eb4
jne 0x10004df2
mov edx, dword [esp + 0x1c]
cmp edx, dword [esp + 0x24]
jg 0x10004eb4
mov eax, 0x68db8bad
imul ecx
sar edx, 0xc
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x2710
sub ecx, eax
mov eax, 0x51eb851f
imul ecx
sar edx, 5
mov ecx, edx
shr ecx, 0x1f
lea eax, [edx + ecx - 1]
lea ecx, [esp + 0x18]
call fcn.10002f60
cmp ebp, 0x20
jae 0x10004e94
mov bl, byte [0x100564c9]
mov esi, dword [esp + 0x18]
mov eax, 0x68db8bad
imul esi
sar edx, 0xc
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov edx, ecx
imul edx, edx, 0x2710
sub esi, edx
mov eax, 0x51eb851f
imul esi
sar edx, 5
mov esi, edx
shr esi, 0x1f
add esi, edx
cmp esi, 2
jne 0x10004e78
call fcn.10002d10
test al, al
jne 0x10004e78
movzx eax, bl
sub eax, 1
jmp 0x10004e7f
movzx eax, byte [esi + 0x100564c7]
movzx eax, al
cmp eax, ebp
jae 0x10004e94
lea eax, [esi - 1]
lea ecx, [esp + 0x18]
call fcn.10002f60
jmp 0x10004e32
push 0
push ebp
lea ebx, [esp + 0x20]
call fcn.10003010
mov eax, dword [esp + 0x18]
cmp eax, edi
jg 0x10004eb4
jne 0x10004ec9
mov ecx, dword [esp + 0x1c]
cmp ecx, dword [esp + 0x24]
jle 0x10004ec9
lea esi, [esp + 0x18]
lea eax, [esp + 0x20]
call fcn.10003400
mov dword [esp + 0x40], 1
mov esi, dword [esp + 0x34]
mov edx, dword [esp + 0x30]
cmp esi, dword [edx + 4]
jne 0x10004edc
call dword [sym.imp.MSVCR80.dll__invalid_parameter_noinfo]
mov eax, dword [esi]
mov edi, dword [esp + 0x30]
mov dword [esp + 0x34], eax
mov esi, eax
jmp 0x10004be9
lea esi, [esp + 0x4c]
call fcn.10006620
jmp 0x1000462e
mov edx, dword [ebp]
mov eax, dword [edx + 0x74]
mov ecx, ebp
call eax
jmp case.default.0x10003ede
mov edx, dword [ebp]
mov eax, dword [edx + 0x88]
mov ecx, ebp
call eax
push edx
push eax
lea esi, [esp + 0x30]
call fcn.100035f0
mov ecx, dword [esp + 0x2c]
mov eax, 0x68db8bad
imul ecx
sar edx, 0xc
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x2710
mov edx, ecx
sub edx, eax
mov eax, 0x51eb851f
imul edx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, 0x3b
sub edx, eax
imul edx, edx, 0x64
add ecx, edx
mov eax, 0x51eb851f
imul ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov esi, eax
lea edi, [esp + 0xe4]
imul esi, esi, 0x64
call fcn.10003290
test eax, eax
je 0x10004f89
lea ecx, [eax + 4]
jmp 0x10004f8b
xor ecx, ecx
mov ecx, dword [ecx]
mov dword [esp + 0x1c], ecx
mov edi, dword [eax]
mov eax, 0x68db8bad
imul ecx
sar edx, 0xc
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x2710
mov edx, ecx
sub edx, eax
mov eax, 0x51eb851f
imul edx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, 0x3b
sub edx, eax
imul edx, edx, 0x64
add ecx, edx
mov eax, 0x51eb851f
imul ecx
mov ecx, dword [esp + 0x28]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x64
cmp edi, ecx
mov dword [esp + 0x18], edi
mov dword [esp + 0x1c], eax
jg 0x10004ff5
jne 0x10005007
cmp eax, esi
jle 0x10005007
mov edx, dword [ebp]
mov eax, dword [edx + 0x88]
mov ecx, ebp
call eax
jmp 0x1000463e
lea ecx, [esp + 0x6c]
lea eax, [esp + 0x24]
call fcn.10002c70
mov ecx, dword [esp + 0x20]
mov eax, 0x68db8bad
imul ecx
sar edx, 0xc
mov eax, edx
shr eax, 0x1f
add eax, edx
mov word [esp + 0x6c], ax
imul eax, eax, 0x2710
mov edx, ecx
sub edx, eax
mov eax, 0x51eb851f
imul edx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov word [esp + 0x6e], ax
mov eax, 0x51eb851f
imul ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x64
sub ecx, eax
lea eax, [esp + 0x20]
mov word [esp + 0x72], cx
call fcn.10002d60
lea ecx, [esp + 0x5c]
push ecx
lea edx, [esp + 0x70]
push edx
mov word [esp + 0x78], ax
call dword [sym.imp.OLEAUT32.dll_VariantTimeToSystemTime]
fld qword [esp + 0x5c]
call fcn.100471a6
jmp 0x1000463e