Function at 0x10023580
Capabilities:
Check for time delay via gettickcount
Delete file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1002a55b
mov eax, dword fs:[0]
push eax
sub esp, 0x350
mov eax, dword [0x10035140]
xor eax, ebp
mov dword [ebp - 0x10], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x2cc], eax
call fcn.10022b70
push 0
push 0
push 1
push 0
call dword [sym.imp.KERNEL32.dll_CreateEventW]
mov ecx, dword [0x10037a4c]
mov dword [ecx + 0x48], eax
call fcn.10022b70
mov edx, dword [0x10037a4c]
mov dword [edx + 4], 1
call fcn.10022b70
push 0x1002e954
lea ecx, [ebp - 0x2c8]
call fcn.100048b0
mov dword [ebp - 4], 0
call fcn.10022b70
push str.BDLogicUtils_url
lea ecx, [ebp - 0x48]
call fcn.100048b0
mov byte [ebp - 4], 1
call fcn.10022b70
lea eax, [ebp - 0x48]
push eax
lea ecx, [ebp - 0x2c8]
push ecx
mov ecx, dword [0x10037a4c]
call fcn.10025850
push 0xffffffffffffffff
mov edx, dword [0x10037a4c]
mov eax, dword [edx + 0x48]
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
call fcn.10022b70
mov ecx, dword [0x10037a4c]
cmp dword [ecx + 0x4c], 0
je 0x100237f9
mov edx, dword [0x10037a4c]
mov eax, dword [edx + 0x48]
push eax
call dword [sym.imp.KERNEL32.dll_ResetEvent]
call fcn.10022b70
mov ecx, dword [0x10037a4c]
mov dword [ecx + 4], 2
call fcn.10022b70
push str.BDMReport.dll
lea ecx, [ebp - 0x2c8]
call fcn.10004970
call fcn.10022b70
push str.BDMReport_url
lea ecx, [ebp - 0x48]
call fcn.10004970
call fcn.10022b70
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x2f4], esp
lea edx, [ebp - 0x48]
push edx
call fcn.100048f0
mov dword [ebp - 0x324], eax
mov eax, dword [ebp - 0x324]
mov dword [ebp - 0x328], eax
mov byte [ebp - 4], 2
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x2f8], esp
lea edx, [ebp - 0x2c8]
push edx
call fcn.100048f0
mov dword [ebp - 0x32c], eax
mov eax, dword [0x10037a4c]
add eax, 0x40
push eax
mov byte [ebp - 4], 1
mov ecx, dword [0x10037a4c]
call fcn.10025a80
call fcn.10022b70
push 0xffffffffffffffff
mov ecx, dword [0x10037a4c]
mov edx, dword [ecx + 0x48]
push edx
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
call fcn.10022b70
mov eax, dword [0x10037a4c]
cmp dword [eax + 0x4c], 0
je 0x100237f9
mov ecx, dword [0x10037a4c]
mov edx, dword [ecx + 0x48]
push edx
call dword [sym.imp.KERNEL32.dll_ResetEvent]
call fcn.10022b70
mov eax, dword [0x10037a4c]
mov dword [eax + 4], 3
call fcn.10022b70
push str.BDMNet.dll
lea ecx, [ebp - 0x2c8]
call fcn.10004970
call fcn.10022b70
push str.BDMNet_url
lea ecx, [ebp - 0x48]
call fcn.10004970
call fcn.10022b70
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x2fc], esp
lea edx, [ebp - 0x48]
push edx
call fcn.100048f0
mov dword [ebp - 0x330], eax
mov eax, dword [ebp - 0x330]
mov dword [ebp - 0x334], eax
mov byte [ebp - 4], 3
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x300], esp
lea edx, [ebp - 0x2c8]
push edx
call fcn.100048f0
mov dword [ebp - 0x338], eax
mov eax, dword [0x10037a4c]
add eax, 0x40
push eax
mov byte [ebp - 4], 1
mov ecx, dword [0x10037a4c]
call fcn.10025a80
call fcn.10022b70
push 0xffffffffffffffff
mov ecx, dword [0x10037a4c]
mov edx, dword [ecx + 0x48]
push edx
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
call fcn.10022b70
call fcn.10023040
lea ecx, [ebp - 0x6c]
call fcn.10004880
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x2c]
call fcn.10004880
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x2ac]
call fcn.10004880
mov byte [ebp - 4], 6
mov dword [ebp - 0x4c], 1
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x6c]
push ecx
call fcn.10022ed0
add esp, 8
lea edx, [ebp - 0x2ac]
push edx
call fcn.10027f40
add esp, 4
test eax, eax
je 0x100238b8
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x304], esp
lea eax, [ebp - 0x2c]
push eax
call fcn.100048f0
mov dword [ebp - 0x33c], eax
mov ecx, dword [ebp - 0x33c]
mov dword [ebp - 0x340], ecx
mov byte [ebp - 4], 7
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x308], esp
lea edx, [ebp - 0x2ac]
push edx
call fcn.100048f0
mov dword [ebp - 0x344], eax
mov byte [ebp - 4], 6
call fcn.10027b70
add esp, 0x38
mov dword [ebp - 0x348], eax
cmp dword [ebp - 0x348], 0xffffffff
jle 0x100238b8
mov dword [ebp - 0x4c], 0
mov eax, dword [0x10037a4c]
cmp dword [eax + 0x4c], 0
je 0x10023a75
push 0x1002ea08
lea ecx, [ebp - 0x2d0]
call fcn.100042f0
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x2d0]
push ecx
call fcn.10028280
add esp, 4
mov dword [0x10037ad0], 2
mov dword [0x10037ad4], 6
mov dword [0x10037ad8], 1
push 0x1002ea0c
lea edx, [ebp - 0x2d0]
push edx
call fcn.10008690
add esp, 8
movzx eax, al
neg eax
sbb eax, eax
add eax, 1
mov dword [0x10037adc], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [0x10037a50]
xor edx, edx
mov ecx, 0x3e8
div ecx
mov dword [0x10037ae0], eax
push 0x1002ea10
mov ecx, 0x10037ae4
call fcn.10004970
lea ecx, [ebp - 0x2d0]
call fcn.10007820
push eax
mov ecx, 0x10037b00
call fcn.10004970
mov ecx, 0x10037ad0
call fcn.100298a0
test eax, eax
je 0x10023a66
cmp dword [ebp - 0x4c], 0
jne 0x1002398c
mov dword [0x10037ad8], 0xb
mov ecx, 0x10037ad0
call fcn.100296d0
cmp dword [0x10037a4c], 0
je 0x10023a66
cmp dword [ebp - 0x4c], 0
jne 0x10023a66
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov ecx, dword [0x10037a4c]
call fcn.10025160
mov edx, dword [0x10037a4c]
mov dword [ebp - 0x310], edx
mov eax, dword [ebp - 0x310]
mov dword [ebp - 0x30c], eax
cmp dword [ebp - 0x30c], 0
je 0x100239f9
push 1
mov ecx, dword [ebp - 0x30c]
call fcn.10008630
mov dword [ebp - 0x34c], eax
jmp 0x10023a03
mov dword [ebp - 0x34c], 0
mov dword [0x10037a4c], 0
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x2d0]
call fcn.10004370
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x2ac]
call fcn.10004930
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x2c]
call fcn.10004930
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x6c]
call fcn.10004930
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x48]
call fcn.10004930
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c8]
call fcn.10004930
jmp 0x10023fe5
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x2d0]
call fcn.10004370
lea ecx, [ebp - 0x6c]
push ecx
call fcn.10028000
add esp, 4
mov byte [ebp - 0x6d], 0
mov dword [ebp - 0x2d4], 0
jmp 0x10023aa0
mov edx, dword [ebp - 0x2d4]
add edx, 1
mov dword [ebp - 0x2d4], edx
cmp dword [ebp - 0x2d4], 2
jge 0x10023bd8
mov eax, dword [0x10037a4c]
mov ecx, dword [eax + 0x48]
push ecx
call dword [sym.imp.KERNEL32.dll_ResetEvent]
call fcn.10022b70
mov edx, dword [0x10037a4c]
mov dword [edx + 4], 4
call fcn.10022b70
push 0x1002ea1c
lea ecx, [ebp - 0x2c8]
call fcn.10004970
call fcn.10022b70
lea ecx, [ebp - 0x2f0]
call fcn.10004880
mov byte [ebp - 4], 9
call fcn.10022b70
lea eax, [ebp - 0x2f0]
push eax
call fcn.10027e60
add esp, 4
call fcn.10022b70
lea ecx, [ebp - 0x2f0]
push ecx
lea ecx, [ebp - 0x2c8]
call fcn.10004990
call fcn.10022b70
push 0x1002ea20
lea ecx, [ebp - 0x2c8]
call fcn.100049b0
call fcn.10022b70
lea edx, [ebp - 0x2c8]
push edx
mov ecx, dword [0x10037a4c]
add ecx, 0x68
call fcn.10004950
call fcn.10022b70
lea eax, [ebp - 0x6c]
push eax
lea ecx, [ebp - 0x2c8]
push ecx
mov ecx, dword [0x10037a4c]
call fcn.10025760
call fcn.10022b70
push 0xffffffffffffffff
mov edx, dword [0x10037a4c]
mov eax, dword [edx + 0x48]
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
call fcn.10022b70
mov ecx, dword [0x10037a4c]
cmp dword [ecx + 0x50], 0
jne 0x10023baf
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x2f0]
call fcn.10004930
jmp 0x10023a91
mov byte [ebp - 0x6d], 1
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x2f0]
call fcn.10004930
jmp 0x10023bd8
movzx edx, byte [ebp - 0x6d]
test edx, edx
jne 0x10023c7f
mov dword [0x10037ad8], 2
mov dword [0x10037adc], 1
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [0x10037a50]
xor edx, edx
mov ecx, 0x3e8
div ecx
mov dword [0x10037ae0], eax
mov ecx, 0x10037ad0
call fcn.100298a0
test eax, eax
je 0x10023c2a
mov ecx, 0x10037ad0
call fcn.100296d0
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x2ac]
call fcn.10004930
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x2c]
call fcn.10004930
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x6c]
call fcn.10004930
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x48]
call fcn.10004930
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c8]
call fcn.10004930
jmp 0x10023fe5
mov edx, dword [0x10037a4c]
add edx, 8
push edx
lea ecx, [ebp - 0x290]
call fcn.100048f0
mov byte [ebp - 4], 0xa
call fcn.10022b70
lea eax, [ebp - 0x2c8]
push eax
lea ecx, [ebp - 0x290]
call fcn.10004990
call fcn.10022b70
mov word [ebp - 0x274], 0
push 0x1fe
push 0
lea ecx, [ebp - 0x272]
push ecx
call fcn.1000eae0
add esp, 0xc
call fcn.10022b70
lea edx, [ebp - 0x274]
push edx
lea ecx, [ebp - 0x290]
call fcn.10004a90
push eax
call fcn.10029bc0
add esp, 8
call fcn.10022b70
lea ecx, [ebp - 0x74]
call fcn.100042b0
mov byte [ebp - 4], 0xb
call fcn.10022b70
lea eax, [ebp - 0x274]
push eax
push 0x1002ea2c
lea ecx, [ebp - 0x74]
push ecx
call fcn.10005fb0
add esp, 0xc
call fcn.10022b70
push 0x1002ea34
lea ecx, [ebp - 0x48]
call fcn.10004970
call fcn.10022b70
lea ecx, [ebp - 0x50]
call fcn.100042b0
mov byte [ebp - 4], 0xc
call fcn.10022b70
mov edx, dword [0x10037a4c]
add edx, 0x40
push ecx
mov ecx, esp
mov dword [ebp - 0x314], esp
push edx
call fcn.100042d0
mov dword [ebp - 0x350], eax
mov eax, dword [ebp - 0x350]
mov dword [ebp - 0x354], eax
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x50]
push ecx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x318], esp
lea edx, [ebp - 0x48]
push edx
call fcn.100048f0
mov dword [ebp - 0x358], eax
mov byte [ebp - 4], 0xc
mov ecx, dword [0x10037a4c]
call fcn.10025940
call fcn.10022b70
mov eax, 1
test eax, eax
je 0x10023e2c
mov ecx, dword [0x10037a4c]
mov dword [ecx + 0x5c], 0x64
call fcn.10022b70
mov edx, dword [0x10037a4c]
mov dword [edx + 0x5c], 0x64
mov dword [0x10037ad8], 2
mov dword [0x10037adc], 0
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [0x10037a50]
xor edx, edx
mov ecx, 0x3e8
div ecx
mov dword [0x10037ae0], eax
mov ecx, 0x10037ad0
call fcn.100298a0
test eax, eax
je 0x10023e17
mov ecx, 0x10037ad0
call fcn.100296d0
mov ecx, dword [0x10037a4c]
call fcn.10025e90
call fcn.10022b70
jmp 0x10023f05
lea ecx, [ebp - 0x290]
call fcn.10004a90
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
call fcn.10022b70
mov dword [0x10037ad8], 2
mov dword [0x10037adc], 2
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [0x10037a50]
xor edx, edx
mov ecx, 0x3e8
div ecx
mov dword [0x10037ae0], eax
mov ecx, 0x10037ad0
call fcn.100298a0
test eax, eax
je 0x10023e89
mov ecx, 0x10037ad0
call fcn.100296d0
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x50]
call fcn.10004370
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x74]
call fcn.10004370
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x290]
call fcn.10004930
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x2ac]
call fcn.10004930
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x2c]
call fcn.10004930
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x6c]
call fcn.10004930
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x48]
call fcn.10004930
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c8]
call fcn.10004930
jmp 0x10023fe5
cmp dword [0x10037a4c], 0
je 0x10023f72
mov ecx, dword [0x10037a4c]
call fcn.10025160
call fcn.10022b70
mov edx, dword [0x10037a4c]
mov dword [ebp - 0x320], edx
mov eax, dword [ebp - 0x320]
mov dword [ebp - 0x31c], eax
cmp dword [ebp - 0x31c], 0
je 0x10023f54
push 1
mov ecx, dword [ebp - 0x31c]
call fcn.10008630
mov dword [ebp - 0x35c], eax
jmp 0x10023f5e
mov dword [ebp - 0x35c], 0
call fcn.10022b70
mov dword [0x10037a4c], 0
call fcn.10022b70
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x50]
call fcn.10004370
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x74]
call fcn.10004370
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x290]
call fcn.10004930
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x2ac]
call fcn.10004930
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x2c]
call fcn.10004930
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x6c]
call fcn.10004930
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x48]
call fcn.10004930
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c8]
call fcn.10004930
jmp 0x10023fe5
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1000e148
mov esp, ebp
pop ebp
ret