Function at 0x4555c0
Capabilities:
Contain obfuscated stackstrings
Get common file path

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4ce59a
mov eax, dword fs:[0]
push eax
mov eax, 0x87c4
call fcn.004bfba0
mov eax, dword [0x53de00]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x8740], 0x26d
mov dword [ebp - 0x873c], 0x526
mov eax, 0x6c4
cdq
idiv dword [ebp - 0x8740]
mov ecx, eax
add ecx, 0x1a7a
sub ecx, dword [ebp - 0x873c]
mov eax, 0x1af3
cdq
idiv dword [ebp - 0x873c]
add ecx, eax
mov eax, 0xf75
cdq
idiv dword [ebp - 0x8740]
sub ecx, eax
sub ecx, 0x121f
mov eax, ecx
cdq
mov dword [ebp - 0x87b0], eax
mov dword [ebp - 0x87ac], edx
mov dword [ebp - 0x876c], 0x3a0
mov dword [ebp - 0x8738], 0x53f
mov eax, dword [ebp - 0x8738]
cdq
mov ecx, 0xe39
idiv ecx
mov ecx, eax
add ecx, 0x1deb
sub ecx, dword [ebp - 0x876c]
mov eax, dword [ebp - 0x8738]
cdq
mov esi, 0x17f8
idiv esi
lea ecx, [ecx + eax + 0x157d]
mov eax, dword [ebp - 0x8738]
cdq
mov esi, 0xa61
idiv esi
sub ecx, eax
mov dword [ebp - 0x879c], ecx
xor edx, edx
mov dword [ebp - 0x874c], 0x1f2
mov dword [ebp - 0x8748], edx
mov dword [ebp - 0x8770], 0xc1
mov eax, dword [ebp - 0x8770]
cdq
mov ecx, 0x23db
idiv ecx
cdq
mov ecx, dword [ebp - 0x8748]
push ecx
mov ecx, dword [ebp - 0x874c]
push ecx
push edx
push eax
call fcn.004bfaf0
add eax, 0x203c
sub eax, dword [ebp - 0x874c]
sub eax, 0x1d1c
mov word [ebp - 0x8768], ax
mov dword [ebp - 0x8774], 0x17d
xor edx, edx
mov dword [ebp - 0x8754], 0x13f
mov dword [ebp - 0x8750], edx
push 0
push 0x1efc
mov eax, dword [ebp - 0x8750]
push eax
mov ecx, dword [ebp - 0x8754]
push ecx
call fcn.004bfaf0
mov ecx, 0x235e
sub ecx, eax
add ecx, dword [ebp - 0x8754]
mov eax, 0x1f03
cdq
idiv dword [ebp - 0x8774]
cdq
mov esi, 0x1da2
idiv esi
cdq
add ecx, eax
mov dword [ebp - 0x87a0], ecx
mov dword [ebp - 0x8744], 0x4e3
xor edx, edx
mov dword [ebp - 0x8764], 0x372
mov dword [ebp - 0x8760], edx
mov eax, dword [ebp - 0x8744]
add eax, 0x3968
cdq
mov esi, eax
push 0
push 0x2615
mov eax, dword [ebp - 0x8760]
push eax
mov ecx, dword [ebp - 0x8764]
push ecx
call fcn.004bfaf0
sub esi, eax
mov eax, dword [ebp - 0x8744]
cdq
sub esi, eax
add esi, 0xf1f
mov dword [ebp - 0x87a4], esi
lea ecx, [ebp - 0x8798]
call fcn.004be3a0
mov dword [ebp - 4], 0
mov dword [ebp - 0x86ac], 0
jmp 0x4557e9
mov edx, dword [ebp - 0x86ac]
add edx, 1
mov dword [ebp - 0x86ac], edx
cmp dword [ebp - 0x86ac], 0x67e00
jae 0x45580e
mov eax, dword [ebp - 0x86ac]
add eax, section..data
push eax
lea ecx, [ebp - 0x8798]
call fcn.004bf890
jmp 0x4557da
mov byte [ebp - 0x8721], 1
mov byte [ebp - 0x869d], 0
mov byte [ebp - 0x8699], 0
movzx ecx, byte [ebp - 0x869d]
test ecx, ecx
je 0x4558e8
movzx edx, byte [ebp - 0x8699]
test edx, edx
je 0x4558e8
mov dword [ebp - 0x86b0], 0x91cb
mov dword [ebp - 0x86f8], 0
jmp 0x455866
mov eax, dword [ebp - 0x86f8]
add eax, 1
mov dword [ebp - 0x86f8], eax
cmp dword [ebp - 0x86f8], 0x20
jge 0x45588d
cmp dword [ebp - 0x86b0], 0
jge 0x45587c
jmp 0x45588d
mov ecx, dword [ebp - 0x86b0]
sub ecx, 1
mov dword [ebp - 0x86b0], ecx
jmp 0x455857
mov dword [ebp - 0x86b0], 0x53f0
mov dword [ebp - 0x86fc], 0
cmp dword [ebp - 0x86fc], 0x25
jge 0x4558e3
movzx edx, byte [ebp - 0x869d]
test edx, edx
je 0x4558c0
movzx eax, byte [ebp - 0x8699]
test eax, eax
jne 0x4558cb
movzx ecx, byte [ebp - 0x8699]
test ecx, ecx
jne 0x4558d2
mov byte [ebp - 0x8699], 0
mov edx, dword [ebp - 0x86fc]
add edx, 1
mov dword [ebp - 0x86fc], edx
jmp 0x4558a1
jmp 0x45596c
mov byte [ebp - 0x34], 0x56
mov byte [ebp - 0x33], 0x46
mov byte [ebp - 0x32], 0x53
mov byte [ebp - 0x31], 0x4f
mov byte [ebp - 0x30], 0x72
mov byte [ebp - 0x2f], 0x64
mov byte [ebp - 0x2e], 0x70
mov byte [ebp - 0x2d], 0x51
mov byte [ebp - 0x2c], 0x63
mov byte [ebp - 0x2b], 0x79
mov byte [ebp - 0x2a], 0x56
mov byte [ebp - 0x29], 0x4e
mov byte [ebp - 0x28], 0x73
mov eax, dword [str.WBxDfocaEx]
mov dword [ebp - 0x4c], eax
mov ecx, dword [0x4cf22c]
mov dword [ebp - 0x48], ecx
mov edx, dword [0x4cf230]
mov dword [ebp - 0x44], edx
mov eax, dword [0x4cf234]
mov dword [ebp - 0x40], eax
mov ecx, dword [0x4cf238]
mov dword [ebp - 0x3c], ecx
mov dx, word [0x4cf23c]
mov word [ebp - 0x38], dx
lea eax, [ebp - 0x45c]
push eax
push 0
lea ecx, [ebp - 0x4c]
push ecx
lea edx, [ebp - 0x254]
push edx
call dword [sym.imp.KERNEL32.dll_GetTempFileNameW]
mov byte [ebp - 0x8701], 1
mov byte [ebp - 0x8729], 1
mov byte [ebp - 0x872a], 1
mov byte [ebp - 0x869a], 0
mov byte [ebp - 0x86a1], 0
movzx eax, byte [ebp - 0x869a]
test eax, eax
je 0x455a54
movzx ecx, byte [ebp - 0x86a1]
test ecx, ecx
je 0x455a54
mov dword [ebp - 0x86b4], 0x17cc9
mov dword [ebp - 0x8700], 0
jmp 0x4559d2
mov edx, dword [ebp - 0x8700]
add edx, 1
mov dword [ebp - 0x8700], edx
cmp dword [ebp - 0x8700], 0x21
jge 0x4559f9
cmp dword [ebp - 0x86b4], 0
jge 0x4559e8
jmp 0x4559f9
mov eax, dword [ebp - 0x86b4]
sub eax, 1
mov dword [ebp - 0x86b4], eax
jmp 0x4559c3
mov dword [ebp - 0x86b4], 0xdf680
mov dword [ebp - 0x8728], 0
cmp dword [ebp - 0x8728], 0x43
jge 0x455a4f
movzx ecx, byte [ebp - 0x869a]
test ecx, ecx
je 0x455a2c
movzx edx, byte [ebp - 0x869a]
test edx, edx
jne 0x455a37
movzx eax, byte [ebp - 0x86a1]
test eax, eax
jne 0x455a3e
mov byte [ebp - 0x869a], 1
mov ecx, dword [ebp - 0x8728]
add ecx, 1
mov dword [ebp - 0x8728], ecx
jmp 0x455a0d
jmp 0x455be6
push 0x12d0
push 0
lea edx, [ebp - 0x8674]
push edx
call fcn.004c23a0
add esp, 0xc
mov dword [ebp - 0x86b8], 0
jmp 0x455a85
mov eax, dword [ebp - 0x86b8]
add eax, 1
mov dword [ebp - 0x86b8], eax
cmp dword [ebp - 0x86b8], 7
jae 0x455ada
mov dword [ebp - 0x86bc], 0
jmp 0x455aa9
mov ecx, dword [ebp - 0x86bc]
add ecx, 1
mov dword [ebp - 0x86bc], ecx
cmp dword [ebp - 0x86bc], 0x56
jge 0x455ad8
imul edx, dword [ebp - 0x86b8], 0x2b0
lea eax, [ebp + edx - 0x8674]
mov ecx, dword [ebp - 0x86bc]
movsd xmm0, qword [0x4cf498]
movsd qword [eax + ecx*8], xmm0
jmp 0x455a9a
jmp 0x455a76
push 0x12d0
push 0
lea edx, [ebp - 0x73a4]
push edx
call fcn.004c23a0
add esp, 0xc
mov dword [ebp - 0x86c0], 0
jmp 0x455b0b
mov eax, dword [ebp - 0x86c0]
add eax, 1
mov dword [ebp - 0x86c0], eax
cmp dword [ebp - 0x86c0], 7
jae 0x455b60
mov dword [ebp - 0x86c4], 0
jmp 0x455b2f
mov ecx, dword [ebp - 0x86c4]
add ecx, 1
mov dword [ebp - 0x86c4], ecx
cmp dword [ebp - 0x86c4], 0x56
jge 0x455b5e
imul edx, dword [ebp - 0x86c0], 0x2b0
lea eax, [ebp + edx - 0x73a4]
mov ecx, dword [ebp - 0x86c4]
movsd xmm0, qword [0x4cf4d0]
movsd qword [eax + ecx*8], xmm0
jmp 0x455b20
jmp 0x455afc
push 0x12d0
push 0
lea edx, [ebp - 0x60d4]
push edx
call fcn.004c23a0
add esp, 0xc
mov dword [ebp - 0x86c8], 0
jmp 0x455b91
mov eax, dword [ebp - 0x86c8]
add eax, 1
mov dword [ebp - 0x86c8], eax
cmp dword [ebp - 0x86c8], 7
jae 0x455be6
mov dword [ebp - 0x86cc], 0
jmp 0x455bb5
mov ecx, dword [ebp - 0x86cc]
add ecx, 1
mov dword [ebp - 0x86cc], ecx
cmp dword [ebp - 0x86cc], 0x56
jge 0x455be4
imul edx, dword [ebp - 0x86c8], 0x2b0
lea eax, [ebp + edx - 0x60d4]
mov ecx, dword [ebp - 0x86cc]
movsd xmm0, qword [0x4cf440]
movsd qword [eax + ecx*8], xmm0
jmp 0x455ba6
jmp 0x455b82
mov byte [ebp - 0x872b], 1
mov byte [ebp - 0x872c], 1
mov byte [ebp - 0x872d], 0
mov byte [ebp - 0x869c], 0
mov byte [ebp - 0x869f], 1
mov byte [ebp - 0x869e], 1
movzx edx, byte [ebp - 0x869c]
test edx, edx
jne 0x455c39
movzx eax, byte [ebp - 0x869f]
test eax, eax
je 0x455ce0
movzx ecx, byte [ebp - 0x869e]
test ecx, ecx
je 0x455ce0
mov dword [ebp - 0x86f4], 0xdc2f
mov dword [ebp - 0x8708], 0
jmp 0x455c5e
mov edx, dword [ebp - 0x8708]
add edx, 1
mov dword [ebp - 0x8708], edx
cmp dword [ebp - 0x8708], 0x2b
jge 0x455c85
cmp dword [ebp - 0x86f4], 0
jge 0x455c74
jmp 0x455c85
mov eax, dword [ebp - 0x86f4]
sub eax, 1
mov dword [ebp - 0x86f4], eax
jmp 0x455c4f
mov dword [ebp - 0x86f4], 0xe899
mov dword [ebp - 0x870c], 0
cmp dword [ebp - 0x870c], 0x29
jge 0x455cdb
movzx ecx, byte [ebp - 0x869e]
test ecx, ecx
je 0x455cb8
movzx edx, byte [ebp - 0x869c]
test edx, edx
jne 0x455cc3
movzx eax, byte [ebp - 0x869f]
test eax, eax
jne 0x455cca
mov byte [ebp - 0x869c], 0
mov ecx, dword [ebp - 0x870c]
add ecx, 1
mov dword [ebp - 0x870c], ecx
jmp 0x455c99
jmp 0x455e72
push 0x1880
push 0
lea edx, [ebp - 0x3584]
push edx
call fcn.004c23a0
add esp, 0xc
mov dword [ebp - 0x86f0], 0
jmp 0x455d11
mov eax, dword [ebp - 0x86f0]
add eax, 1
mov dword [ebp - 0x86f0], eax
cmp dword [ebp - 0x86f0], 8
jae 0x455d66
mov dword [ebp - 0x86ec], 0
jmp 0x455d35
mov ecx, dword [ebp - 0x86ec]
add ecx, 1
mov dword [ebp - 0x86ec], ecx
cmp dword [ebp - 0x86ec], 0x62
jge 0x455d64
imul edx, dword [ebp - 0x86f0], 0x310
lea eax, [ebp + edx - 0x3584]
mov ecx, dword [ebp - 0x86ec]
movsd xmm0, qword [0x4cf4a8]
movsd qword [eax + ecx*8], xmm0
jmp 0x455d26
jmp 0x455d02
push 0x1880
push 0
lea edx, [ebp - 0x1d04]
push edx
call fcn.004c23a0
add esp, 0xc
mov dword [ebp - 0x86e8], 0
jmp 0x455d97
mov eax, dword [ebp - 0x86e8]
add eax, 1
mov dword [ebp - 0x86e8], eax
cmp dword [ebp - 0x86e8], 8
jae 0x455dec
mov dword [ebp - 0x86e0], 0
jmp 0x455dbb
mov ecx, dword [ebp - 0x86e0]
add ecx, 1
mov dword [ebp - 0x86e0], ecx
cmp dword [ebp - 0x86e0], 0x62
jge 0x455dea
imul edx, dword [ebp - 0x86e8], 0x310
lea eax, [ebp + edx - 0x1d04]
mov ecx, dword [ebp - 0x86e0]
movsd xmm0, qword [0x4cf490]
movsd qword [eax + ecx*8], xmm0
jmp 0x455dac
jmp 0x455d88
push 0x1880
push 0
lea edx, [ebp - 0x4e04]
push edx
call fcn.004c23a0
add esp, 0xc
mov dword [ebp - 0x86dc], 0
jmp 0x455e1d
mov eax, dword [ebp - 0x86dc]
add eax, 1
mov dword [ebp - 0x86dc], eax
cmp dword [ebp - 0x86dc], 8
jae 0x455e72
mov dword [ebp - 0x86e4], 0
jmp 0x455e41
mov ecx, dword [ebp - 0x86e4]
add ecx, 1
mov dword [ebp - 0x86e4], ecx
cmp dword [ebp - 0x86e4], 0x62
jge 0x455e70
imul edx, dword [ebp - 0x86dc], 0x310
lea eax, [ebp + edx - 0x4e04]
mov ecx, dword [ebp - 0x86e4]
movsd xmm0, qword [0x4cf458]
movsd qword [eax + ecx*8], xmm0
jmp 0x455e32
jmp 0x455e0e
mov byte [ebp - 0x872e], 1
mov byte [ebp - 0x869b], 1
mov byte [ebp - 0x86a2], 1
mov byte [ebp - 0x86a0], 1
movzx edx, byte [ebp - 0x869b]
test edx, edx
jne 0x455eb3
movzx eax, byte [ebp - 0x86a2]
test eax, eax
jne 0x455eb3
movzx ecx, byte [ebp - 0x86a0]
test ecx, ecx
je 0x455f5a
mov dword [ebp - 0x86d8], 0x435b
mov dword [ebp - 0x8710], 0
jmp 0x455ed8
mov edx, dword [ebp - 0x8710]
add edx, 1
mov dword [ebp - 0x8710], edx
cmp dword [ebp - 0x8710], 1
jge 0x455eff
cmp dword [ebp - 0x86d8], 0
jge 0x455eee
jmp 0x455eff
mov eax, dword [ebp - 0x86d8]
sub eax, 1
mov dword [ebp - 0x86d8], eax
jmp 0x455ec9
mov dword [ebp - 0x86d8], 0xa6dec
mov dword [ebp - 0x8714], 0
cmp dword [ebp - 0x8714], 0x26
jge 0x455f55
movzx ecx, byte [ebp - 0x86a0]
test ecx, ecx
je 0x455f32
movzx edx, byte [ebp - 0x869b]
test edx, edx
jne 0x455f3d
movzx eax, byte [ebp - 0x869b]
test eax, eax
jne 0x455f44
mov byte [ebp - 0x869b], 1
mov ecx, dword [ebp - 0x8714]
add ecx, 1
mov dword [ebp - 0x8714], ecx
jmp 0x455f13
jmp 0x455ff5
mov dword [ebp - 0x484], 0xc08d
mov dword [ebp - 0x480], 0xc77c
mov dword [ebp - 0x47c], 0x581c
mov dword [ebp - 0x478], 0x3745
mov dword [ebp - 0x474], 0x184b4
mov dword [ebp - 0x470], 0xa48f
mov dword [ebp - 0x46c], 0xb8ed
mov dword [ebp - 0x468], 0x4908
mov dword [ebp - 0x464], 0x17b62
mov dword [ebp - 0x460], 0x175b8
mov dword [ebp - 0x86d4], 0
jmp 0x455fd9
mov edx, dword [ebp - 0x86d4]
add edx, 1
mov dword [ebp - 0x86d4], edx
cmp dword [ebp - 0x86d4], 0xa
jae 0x455ff5
mov eax, dword [ebp - 0x86d4]
mov dword [ebp + eax*4 - 0x484], 0xa09
jmp 0x455fca
mov byte [ebp - 0x872f], 1
movzx ecx, byte [ebp - 0x8730]
push ecx
push str.xPYhugHtVI
lea ecx, [ebp - 0x8698]
call fcn.004bcf80
mov ecx, eax
call fcn.004bf4b0
push eax
lea ecx, [ebp - 0x868c]
call fcn.004be270
mov byte [ebp - 4], 1
lea edx, [ebp - 0x868c]
push edx
lea eax, [ebp - 0x8798]
push eax
lea ecx, [ebp - 0x87d0]
push ecx
lea ecx, [ebp - 0x8731]
call fcn.004be960
mov dword [ebp - 0x8778], eax
mov edx, dword [ebp - 0x8778]
mov dword [ebp - 0x877c], edx
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x877c]
call fcn.004bf330
push eax
call fcn.0042ae40
add esp, 4
mov dword [ebp - 0x878c], eax
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x87d0]
call fcn.004be650
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x868c]
call fcn.004be630
mov byte [ebp - 0x24], 0x36
mov byte [ebp - 0x23], 0x4f
mov byte [ebp - 0x22], 0x33
mov byte [ebp - 0x21], 0x49
mov byte [ebp - 0x20], 0x6c
mov byte [ebp - 0x1f], 0x71
mov byte [ebp - 0x1e], 0x41
mov byte [ebp - 0x1d], 0x37
mov byte [ebp - 0x1c], 0x64
mov byte [ebp - 0x1b], 0x48
mov byte [ebp - 0x1a], 0x31
mov byte [ebp - 0x19], 0x38
mov byte [ebp - 0x18], 0x70
mov byte [ebp - 0x17], 0x74
mov byte [ebp - 0x16], 0x53
mov byte [ebp - 0x15], 0x4b
mov byte [ebp - 0x14], 0x47
lea eax, [ebp - 0x24]
push eax
call fcn.004c48c0
add esp, 4
mov dword [ebp - 0x8780], eax
mov ecx, dword [ebp - 0x8780]
push ecx
call fcn.004bfad9
add esp, 4
mov dword [ebp - 0x8784], eax
mov edx, dword [ebp - 0x8784]
mov dword [ebp - 0x8788], edx
mov dword [ebp - 0x86a8], 0
jmp 0x45612b
mov eax, dword [ebp - 0x86a8]
add eax, 1
mov dword [ebp - 0x86a8], eax
cmp dword [ebp - 0x86a8], 0x11
jae 0x456153
mov ecx, 0x11
sub ecx, dword [ebp - 0x86a8]
mov edx, dword [ebp - 0x8788]
add edx, dword [ebp - 0x86a8]
mov al, byte [ebp + ecx - 0x24]
mov byte [edx], al
jmp 0x45611c
mov dword [ebp - 0x86d0], 0
jmp 0x45616e
mov ecx, dword [ebp - 0x86d0]
add ecx, 1
mov dword [ebp - 0x86d0], ecx
cmp dword [ebp - 0x86d0], 0x11
jae 0x45618e
mov edx, 1
shl edx, 1
mov eax, dword [ebp - 0x86d0]
mov cl, byte [ebp + edx - 0x24]
mov byte [ebp + eax - 0x24], cl
jmp 0x45615f
call dword [ebp - 0x878c]
mov dword [ebp - 0x8718], 0x175
mov dword [ebp - 0x87a8], 0x453
mov eax, dword [ebp - 0x8718]
cdq
mov ecx, 0x371
idiv ecx
add eax, 0x256
sub eax, dword [ebp - 0x8718]
add eax, 0x773
sub eax, dword [ebp - 0x8718]
sub eax, 0x1a55
cdq
mov dword [ebp - 0x87b8], eax
mov dword [ebp - 0x87b4], edx
mov edx, 0x55a
mov word [ebp - 0x875c], dx
mov dword [ebp - 0x871c], 0x583
mov eax, 0x264c
sub eax, dword [ebp - 0x871c]
mov ecx, dword [ebp - 0x871c]
lea ecx, [eax + ecx + 0x11c0]
mov eax, 0x133b
cdq
idiv dword [ebp - 0x871c]
sub ecx, eax
add ecx, 0x23ad
mov dword [ebp - 0x87c4], ecx
mov dword [ebp - 0x8720], 0x5d
mov dword [ebp - 0x8758], 0x49a
mov eax, dword [ebp - 0x8720]
cdq
mov ecx, 0x3a2
idiv ecx
cdq
idiv dword [ebp - 0x8720]
cdq
mov ecx, 0x3cb
idiv ecx
mov edx, 0xce7
sub edx, eax
sub edx, dword [ebp - 0x8720]
add edx, 0x978
sub edx, dword [ebp - 0x8758]
sub edx, 0xdc8
mov eax, edx
cdq
mov dword [ebp - 0x87c0], eax
mov dword [ebp - 0x87bc], edx
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x8798]
call fcn.004be650
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004bfae2
mov esp, ebp
pop ebp
ret