Function at 0x10004390
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100505c4
mov eax, dword fs:[0]
push eax
sub esp, 0x460
mov eax, dword [0x10066040]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 4], 0
xor ecx, ecx
mov dword [ebp - 0x1c], 0xb5b3b5b6
mov dword [ebp - 0x18], 0xbbb8b1b3
mov word [ebp - 0x14], 0xb8
mov byte [ebp - 0x12], 1
nop
lea eax, [ecx - 0x7d]
xor byte [ebp + ecx - 0x1c], al
inc ecx
cmp ecx, 9
jb 0x100043e0
lea eax, [ebp - 0x1c]
mov byte [ebp - 0x12], 0
push eax
lea ecx, [ebp - 0x454]
call fcn.10003130
mov byte [ebp - 4], 1
xor ecx, ecx
mov dword [ebp - 0x1c], 0xb7bdb4b2
mov dword [ebp - 0x18], 0xbeb8b0b5
mov dword [ebp - 0x14], 0x100b4bf
nop dword [eax + eax]
lea eax, [ecx - 0x7d]
xor byte [ebp + ecx - 0x1c], al
inc ecx
cmp ecx, 0xa
jb 0x10004420
lea eax, [ebp - 0x1c]
mov byte [ebp - 0x11], 0
push eax
lea ecx, [ebp - 0x43c]
call fcn.10003130
mov byte [ebp - 4], 2
xor ecx, ecx
mov dword [ebp - 0x1c], 0xb5b1b5b7
mov dword [ebp - 0x18], 0xb9bbbab6
mov dword [ebp - 0x14], 0x100b5bf
nop dword [eax + eax]
lea eax, [ecx - 0x7d]
xor byte [ebp + ecx - 0x1c], al
inc ecx
cmp ecx, 0xa
jb 0x10004460
lea eax, [ebp - 0x1c]
mov byte [ebp - 0x11], 0
push eax
lea ecx, [ebp - 0x424]
call fcn.10003130
mov byte [ebp - 4], 3
xor ecx, ecx
mov dword [ebp - 0x1c], 0xb6b6b5b1
mov dword [ebp - 0x18], 0xb3bcb8b6
mov dword [ebp - 0x14], 0x100b9bd
nop dword [eax + eax]
lea eax, [ecx - 0x7d]
xor byte [ebp + ecx - 0x1c], al
inc ecx
cmp ecx, 0xa
jb 0x100044a0
lea eax, [ebp - 0x1c]
mov byte [ebp - 0x11], 0
push eax
lea ecx, [ebp - 0x40c]
call fcn.10003130
mov byte [ebp - 4], 4
xor ecx, ecx
mov dword [ebp - 0x1c], 0xb5b5b2b0
mov dword [ebp - 0x18], 0xb2bebcb5
mov dword [ebp - 0x14], 0x100b9be
nop dword [eax + eax]
lea eax, [ecx - 0x7d]
xor byte [ebp + ecx - 0x1c], al
inc ecx
cmp ecx, 0xa
jb 0x100044e0
lea eax, [ebp - 0x1c]
mov byte [ebp - 0x11], 0
push eax
lea ecx, [ebp - 0x3f4]
call fcn.10003130
mov byte [ebp - 4], 5
xor ecx, ecx
mov dword [ebp - 0x1c], 0xb4b3b5b0
mov dword [ebp - 0x18], 0xb3b1b0bf
mov dword [ebp - 0x14], 0x100bdb2
nop dword [eax + eax]
lea eax, [ecx - 0x7d]
xor byte [ebp + ecx - 0x1c], al
inc ecx
cmp ecx, 0xa
jb 0x10004520
lea eax, [ebp - 0x1c]
mov byte [ebp - 0x11], 0
push eax
lea ecx, [ebp - 0x3dc]
call fcn.10003130
mov byte [ebp - 4], 6
xor ecx, ecx
mov dword [ebp - 0x1c], 0xb2bcbcb0
mov dword [ebp - 0x18], 0xbabfbeb0
mov dword [ebp - 0x14], 0x100b4bf
nop dword [eax + eax]
lea eax, [ecx - 0x7d]
xor byte [ebp + ecx - 0x1c], al
inc ecx
cmp ecx, 0xa
jb 0x10004560
lea eax, [ebp - 0x1c]
mov byte [ebp - 0x11], 0
push eax
lea ecx, [ebp - 0x3c4]
call fcn.10003130
mov byte [ebp - 4], 7
xor ecx, ecx
mov dword [ebp - 0x1c], 0xb0b2b5b2
mov dword [ebp - 0x18], 0xbdbfb0b1
mov dword [ebp - 0x14], 0x100bebc
nop dword [eax + eax]
lea eax, [ecx - 0x7d]
xor byte [ebp + ecx - 0x1c], al
inc ecx
cmp ecx, 0xa
jb 0x100045a0
lea eax, [ebp - 0x1c]
mov byte [ebp - 0x11], 0
push eax
lea ecx, [ebp - 0x3ac]
call fcn.10003130
mov byte [ebp - 4], 8
xor ecx, ecx
mov dword [ebp - 0x1c], 0xb6b3b7b0
mov dword [ebp - 0x18], 0xb3bcbcbe
mov dword [ebp - 0x14], 0x100b4bc
nop dword [eax + eax]
lea eax, [ecx - 0x7d]
xor byte [ebp + ecx - 0x1c], al
inc ecx
cmp ecx, 0xa
jb 0x100045e0
lea eax, [ebp - 0x1c]
mov byte [ebp - 0x11], 0
push eax
lea ecx, [ebp - 0x394]
call fcn.10003130
mov byte [ebp - 4], 9
xor ecx, ecx
mov dword [ebp - 0x1c], 0xb0b6bcb4
mov dword [ebp - 0x18], 0xb8bfb9bf
mov word [ebp - 0x14], 0xbd
mov byte [ebp - 0x12], 1
nop
lea eax, [ecx - 0x7d]
xor byte [ebp + ecx - 0x1c], al
inc ecx
cmp ecx, 9
jb 0x10004620
lea eax, [ebp - 0x1c]
mov byte [ebp - 0x12], 0
push eax
lea ecx, [ebp - 0x37c]
call fcn.10003130
mov byte [ebp - 4], 0xa
xor ecx, ecx
mov dword [ebp - 0x1c], 0xbfb3b3b0
mov dword [ebp - 0x18], 0xbdbab1b7
mov dword [ebp - 0x14], 0x100bfbc
nop dword [eax + eax]
lea eax, [ecx - 0x7d]
xor byte [ebp + ecx - 0x1c], al
inc ecx
cmp ecx, 0xa
jb 0x10004660
lea eax, [ebp - 0x1c]
mov byte [ebp - 0x11], 0
push eax
lea ecx, [ebp - 0x364]
call fcn.10003130
mov byte [ebp - 4], 0xb
xor ecx, ecx
mov dword [ebp - 0x1c], 0xb1b2bdb5
mov dword [ebp - 0x18], 0xb8babeb7
mov word [ebp - 0x14], 0x100
nop word [eax + eax]
lea eax, [ecx - 0x7d]
xor byte [ebp + ecx - 0x1c], al
inc ecx
cmp ecx, 8
jb 0x100046a0
lea eax, [ebp - 0x1c]
mov byte [ebp - 0x13], 0
push eax
lea ecx, [ebp - 0x34c]
call fcn.10003130
mov byte [ebp - 4], 0xc
xor ecx, ecx
mov dword [ebp - 0x1c], 0xb7bcbcba
mov dword [ebp - 0x18], 0xbcbcbfbe
mov word [ebp - 0x14], 0xbc
mov byte [ebp - 0x12], 1
nop
lea eax, [ecx - 0x7d]
xor byte [ebp + ecx - 0x1c], al
inc ecx
cmp ecx, 9
jb 0x100046e0
lea eax, [ebp - 0x1c]
mov byte [ebp - 0x12], 0
push eax
lea ecx, [ebp - 0x334]
call fcn.10003130
mov byte [ebp - 4], 0xd
xor ecx, ecx
mov dword [ebp - 0x1c], 0xbfb4bcb1
mov dword [ebp - 0x18], 0xb8bebfb5
mov dword [ebp - 0x14], 0x100babf
nop dword [eax + eax]
lea eax, [ecx - 0x7d]
xor byte [ebp + ecx - 0x1c], al
inc ecx
cmp ecx, 0xa
jb 0x10004720
lea eax, [ebp - 0x1c]
mov byte [ebp - 0x11], 0
push eax
lea ecx, [ebp - 0x31c]
call fcn.10003130
mov byte [ebp - 4], 0xe
xor ecx, ecx
mov dword [ebp - 0x1c], 0xb3b0b5b2
mov dword [ebp - 0x18], 0xb8b1b8b4
mov dword [ebp - 0x14], 0x100b4bb
nop dword [eax + eax]
lea eax, [ecx - 0x7d]
xor byte [ebp + ecx - 0x1c], al
inc ecx
cmp ecx, 0xa
jb 0x10004760
lea eax, [ebp - 0x1c]
mov byte [ebp - 0x11], 0
push eax
lea ecx, [ebp - 0x304]
call fcn.10003130
mov byte [ebp - 4], 0xf
xor ecx, ecx
mov dword [ebp - 0x1c], 0xb7b7b6b2
mov dword [ebp - 0x18], 0xb8bebdb6
mov dword [ebp - 0x14], 0x100b5b8
nop dword [eax + eax]
lea eax, [ecx - 0x7d]
xor byte [ebp + ecx - 0x1c], al
inc ecx
cmp ecx, 0xa
jb 0x100047a0
lea eax, [ebp - 0x1c]
mov byte [ebp - 0x11], 0
push eax
lea ecx, [ebp - 0x2ec]
call fcn.10003130
mov byte [ebp - 4], 0x10
xor ecx, ecx
mov dword [ebp - 0x1c], 0xb0b7b5b1
mov dword [ebp - 0x18], 0xbdbdb9b1
mov dword [ebp - 0x14], 0x100baba
nop dword [eax + eax]
lea eax, [ecx - 0x7d]
xor byte [ebp + ecx - 0x1c], al
inc ecx
cmp ecx, 0xa
jb 0x100047e0
lea eax, [ebp - 0x1c]
mov byte [ebp - 0x11], 0
push eax
lea ecx, [ebp - 0x2d4]
call fcn.10003130
mov byte [ebp - 4], 0x11
xor ecx, ecx
mov dword [ebp - 0x1c], 0xb4b7b4b1
mov dword [ebp - 0x18], 0xbeb0b8b7
mov dword [ebp - 0x14], 0x100babc
nop dword [eax + eax]
lea eax, [ecx - 0x7d]
xor byte [ebp + ecx - 0x1c], al
inc ecx
cmp ecx, 0xa
jb 0x10004820
lea eax, [ebp - 0x1c]
mov byte [ebp - 0x11], 0
push eax
lea ecx, [ebp - 0x2bc]
call fcn.10003130
mov byte [ebp - 4], 0x12
xor ecx, ecx
mov dword [ebp - 0x1c], 0xb7b0b3ba
mov dword [ebp - 0x18], 0xb8b9bfbe
mov word [ebp - 0x14], 0xb2
mov byte [ebp - 0x12], 1
nop
lea eax, [ecx - 0x7d]
xor byte [ebp + ecx - 0x1c], al
inc ecx
cmp ecx, 9
jb 0x10004860
lea eax, [ebp - 0x1c]
mov byte [ebp - 0x12], 0
push eax
lea ecx, [ebp - 0x2a4]
call fcn.10003130
mov byte [ebp - 4], 0x13
xor ecx, ecx
mov dword [ebp - 0x1c], 0xb5b6b5b7
mov dword [ebp - 0x18], 0xb9bab1b3
mov dword [ebp - 0x14], 0x100b8ba
nop dword [eax + eax]
lea eax, [ecx - 0x7d]
xor byte [ebp + ecx - 0x1c], al
inc ecx
cmp ecx, 0xa
jb 0x100048a0
lea eax, [ebp - 0x1c]
mov byte [ebp - 0x11], 0
push eax
lea ecx, [ebp - 0x28c]
call fcn.10003130
mov byte [ebp - 4], 0x14
xor ecx, ecx
mov dword [ebp - 0x1c], 0xbfb5b4b2
mov dword [ebp - 0x18], 0xb2bbbfbe
mov dword [ebp - 0x14], 0x100b9ba
nop dword [eax + eax]
lea eax, [ecx - 0x7d]
xor byte [ebp + ecx - 0x1c], al
inc ecx
cmp ecx, 0xa
jb 0x100048e0
lea eax, [ebp - 0x1c]
mov byte [ebp - 0x11], 0
push eax
lea ecx, [ebp - 0x274]
call fcn.10003130
mov byte [ebp - 4], 0x15
xor ecx, ecx
mov dword [ebp - 0x1c], 0xbfbcb0b0
mov dword [ebp - 0x18], 0xb8beb0be
mov dword [ebp - 0x14], 0x100bbbc
nop dword [eax + eax]
lea eax, [ecx - 0x7d]
xor byte [ebp + ecx - 0x1c], al
inc ecx
cmp ecx, 0xa
jb 0x10004920
lea eax, [ebp - 0x1c]
mov byte [ebp - 0x11], 0
push eax
lea ecx, [ebp - 0x25c]
call fcn.10003130
mov byte [ebp - 4], 0x16
xor ecx, ecx
mov dword [ebp - 0x1c], 0xb0bdb1b1
mov dword [ebp - 0x18], 0xb8beb9bf
mov dword [ebp - 0x14], 0x100beb9
nop dword [eax + eax]
lea eax, [ecx - 0x7d]
xor byte [ebp + ecx - 0x1c], al
inc ecx
cmp ecx, 0xa
jb 0x10004960
lea eax, [ebp - 0x1c]
mov byte [ebp - 0x11], 0
push eax
lea ecx, [ebp - 0x244]
call fcn.10003130
mov byte [ebp - 4], 0x17
xor ecx, ecx
mov dword [ebp - 0x1c], 0xb3b4b4b1
mov dword [ebp - 0x18], 0xbbbeb0b3
mov dword [ebp - 0x14], 0x100bbb3
nop dword [eax + eax]
lea eax, [ecx - 0x7d]
xor byte [ebp + ecx - 0x1c], al
inc ecx
cmp ecx, 0xa
jb 0x100049a0
lea eax, [ebp - 0x1c]
mov byte [ebp - 0x11], 0
push eax
lea ecx, [ebp - 0x22c]
call fcn.10003130
mov byte [ebp - 4], 0x18
xor ecx, ecx
mov dword [ebp - 0x1c], 0xbeb0b2b0
mov dword [ebp - 0x18], 0xbcbbbdb6
mov dword [ebp - 0x14], 0x100b5b9
nop dword [eax + eax]
lea eax, [ecx - 0x7d]
xor byte [ebp + ecx - 0x1c], al
inc ecx
cmp ecx, 0xa
jb 0x100049e0
lea eax, [ebp - 0x1c]
mov byte [ebp - 0x11], 0
push eax
lea ecx, [ebp - 0x214]
call fcn.10003130
mov byte [ebp - 4], 0x19
xor ecx, ecx
mov dword [ebp - 0x1c], 0xbfb6b4b2
mov dword [ebp - 0x18], 0xbbb0b8bf
mov dword [ebp - 0x14], 0x100bebe
nop dword [eax + eax]
lea eax, [ecx - 0x7d]
xor byte [ebp + ecx - 0x1c], al
inc ecx
cmp ecx, 0xa
jb 0x10004a20
lea eax, [ebp - 0x1c]
mov byte [ebp - 0x11], 0
push eax
lea ecx, [ebp - 0x1fc]
call fcn.10003130
mov byte [ebp - 4], 0x1a
xor ecx, ecx
mov dword [ebp - 0x1c], 0xb2b6b4b7
mov dword [ebp - 0x18], 0xb8b1beb5
mov dword [ebp - 0x14], 0x100bbba
nop dword [eax + eax]
lea eax, [ecx - 0x7d]
xor byte [ebp + ecx - 0x1c], al
inc ecx
cmp ecx, 0xa
jb 0x10004a60
lea eax, [ebp - 0x1c]
mov byte [ebp - 0x11], 0
push eax
lea ecx, [ebp - 0x1e4]
call fcn.10003130
mov byte [ebp - 4], 0x1b
xor ecx, ecx
mov dword [ebp - 0x1c], 0xb4bcb3b2
mov dword [ebp - 0x18], 0xbebbb9b5
mov dword [ebp - 0x14], 0x100bcba
nop dword [eax + eax]
lea eax, [ecx - 0x7d]
xor byte [ebp + ecx - 0x1c], al
inc ecx
cmp ecx, 0xa
jb 0x10004aa0
lea eax, [ebp - 0x1c]
mov byte [ebp - 0x11], 0
push eax
lea ecx, [ebp - 0x1cc]
call fcn.10003130
mov byte [ebp - 4], 0x1c
xor ecx, ecx
mov dword [ebp - 0x1c], 0xb1b3b5b7
mov dword [ebp - 0x18], 0xb9b0b9b0
mov dword [ebp - 0x14], 0x100b9b2
nop dword [eax + eax]
lea eax, [ecx - 0x7d]
xor byte [ebp + ecx - 0x1c], al
inc ecx
cmp ecx, 0xa
jb 0x10004ae0
lea eax, [ebp - 0x1c]
mov byte [ebp - 0x11], 0
push eax
lea ecx, [ebp - 0x1b4]
call fcn.10003130
mov byte [ebp - 4], 0x1d
xor ecx, ecx
mov dword [ebp - 0x1c], 0xbfb3b4b2
mov dword [ebp - 0x18], 0xbbb0b8b1
mov dword [ebp - 0x14], 0x100b5bf
nop dword [eax + eax]
lea eax, [ecx - 0x7d]
xor byte [ebp + ecx - 0x1c], al
inc ecx
cmp ecx, 0xa
jb 0x10004b20
lea eax, [ebp - 0x1c]
mov byte [ebp - 0x11], 0
push eax
lea ecx, [ebp - 0x19c]
call fcn.10003130
mov byte [ebp - 4], 0x1e
xor ecx, ecx
mov dword [ebp - 0x1c], 0xbeb6b5b7
mov dword [ebp - 0x18], 0xbbbebcbe
mov dword [ebp - 0x14], 0x100b8bc
nop dword [eax + eax]
lea eax, [ecx - 0x7d]
xor byte [ebp + ecx - 0x1c], al
inc ecx
cmp ecx, 0xa
jb 0x10004b60
lea eax, [ebp - 0x1c]
mov byte [ebp - 0x11], 0
push eax
lea ecx, [ebp - 0x184]
call fcn.10003130
mov byte [ebp - 4], 0x1f
xor ecx, ecx
mov dword [ebp - 0x1c], 0xb7b6b0b1
mov dword [ebp - 0x18], 0xbfbebeb4
mov dword [ebp - 0x14], 0x100bebb
nop dword [eax + eax]
lea eax, [ecx - 0x7d]
xor byte [ebp + ecx - 0x1c], al
inc ecx
cmp ecx, 0xa
jb 0x10004ba0
lea eax, [ebp - 0x1c]
mov byte [ebp - 0x11], 0
push eax
lea ecx, [ebp - 0x16c]
call fcn.10003130
mov byte [ebp - 4], 0x20
xor ecx, ecx
mov dword [ebp - 0x1c], 0xb0bdb5b1
mov dword [ebp - 0x18], 0xbdbabeb6
mov dword [ebp - 0x14], 0x100bcbf
nop dword [eax + eax]
lea eax, [ecx - 0x7d]
xor byte [ebp + ecx - 0x1c], al
inc ecx
cmp ecx, 0xa
jb 0x10004be0
lea eax, [ebp - 0x1c]
mov byte [ebp - 0x11], 0
push eax
lea ecx, [ebp - 0x154]
call fcn.10003130
mov byte [ebp - 4], 0x21
xor ecx, ecx
mov dword [ebp - 0x1c], 0xb3b0b5b1
mov dword [ebp - 0x18], 0xbebdbfb7
mov dword [ebp - 0x14], 0x100beb8
nop dword [eax + eax]
lea eax, [ecx - 0x7d]
xor byte [ebp + ecx - 0x1c], al
inc ecx
cmp ecx, 0xa
jb 0x10004c20
lea eax, [ebp - 0x1c]
mov byte [ebp - 0x11], 0
push eax
lea ecx, [ebp - 0x13c]
call fcn.10003130
mov byte [ebp - 4], 0x22
xor ecx, ecx
mov dword [ebp - 0x1c], 0xb2b7b3b0
mov dword [ebp - 0x18], 0xbab0bab0
mov dword [ebp - 0x14], 0x100bbbe
nop dword [eax + eax]
lea eax, [ecx - 0x7d]
xor byte [ebp + ecx - 0x1c], al
inc ecx
cmp ecx, 0xa
jb 0x10004c60
lea eax, [ebp - 0x1c]
mov byte [ebp - 0x11], 0
push eax
lea ecx, [ebp - 0x124]
call fcn.10003130
mov byte [ebp - 4], 0x23
xor ecx, ecx
mov dword [ebp - 0x1c], 0xb2b3b0b1
mov dword [ebp - 0x18], 0xb9b1bcb6
mov dword [ebp - 0x14], 0x100b5b8
nop dword [eax + eax]
lea eax, [ecx - 0x7d]
xor byte [ebp + ecx - 0x1c], al
inc ecx
cmp ecx, 0xa
jb 0x10004ca0
lea eax, [ebp - 0x1c]
mov byte [ebp - 0x11], 0
push eax
lea ecx, [ebp - 0x10c]
call fcn.10003130
mov byte [ebp - 4], 0x24
xor ecx, ecx
mov dword [ebp - 0x1c], 0xb3b2b1b0
mov dword [ebp - 0x18], 0xbab1b8b3
mov dword [ebp - 0x14], 0x100b4bf
nop dword [eax + eax]
lea eax, [ecx - 0x7d]
xor byte [ebp + ecx - 0x1c], al
inc ecx
cmp ecx, 0xa
jb 0x10004ce0
lea eax, [ebp - 0x1c]
mov byte [ebp - 0x11], 0
push eax
lea ecx, [ebp - 0xf4]
call fcn.10003130
mov byte [ebp - 4], 0x25
xor ecx, ecx
mov dword [ebp - 0x1c], 0xb0bcb7b0
mov dword [ebp - 0x18], 0xb8b9bab5
mov dword [ebp - 0x14], 0x100bfba
nop dword [eax + eax]
lea eax, [ecx - 0x7d]
xor byte [ebp + ecx - 0x1c], al
inc ecx
cmp ecx, 0xa
jb 0x10004d20
lea eax, [ebp - 0x1c]
mov byte [ebp - 0x11], 0
push eax
lea ecx, [ebp - 0xdc]
call fcn.10003130
mov byte [ebp - 4], 0x26
xor ecx, ecx
mov dword [ebp - 0x1c], 0xbeb3b5b7
mov dword [ebp - 0x18], 0xbfbebdbf
mov dword [ebp - 0x14], 0x100bdbc
nop dword [eax + eax]
lea eax, [ecx - 0x7d]
xor byte [ebp + ecx - 0x1c], al
inc ecx
cmp ecx, 0xa
jb 0x10004d60
lea eax, [ebp - 0x1c]
mov byte [ebp - 0x11], 0
push eax
lea ecx, [ebp - 0xc4]
call fcn.10003130
mov byte [ebp - 4], 0x27
xor ecx, ecx
mov dword [ebp - 0x1c], 0xb5bdb1b0
mov dword [ebp - 0x18], 0xbcb8b0b6
mov word [ebp - 0x14], 0x100
nop word [eax + eax]
lea eax, [ecx - 0x7d]
xor byte [ebp + ecx - 0x1c], al
inc ecx
cmp ecx, 8
jb 0x10004da0
lea eax, [ebp - 0x1c]
mov byte [ebp - 0x13], 0
push eax
lea ecx, [ebp - 0xac]
call fcn.10003130
mov byte [ebp - 4], 0x28
xor ecx, ecx
mov dword [ebp - 0x1c], 0xb7bcb6b1
mov dword [ebp - 0x18], 0xbfb8bab3
mov dword [ebp - 0x14], 0x100b9bc
nop dword [eax + eax]
lea eax, [ecx - 0x7d]
xor byte [ebp + ecx - 0x1c], al
inc ecx
cmp ecx, 0xa
jb 0x10004de0
lea eax, [ebp - 0x1c]
mov byte [ebp - 0x11], 0
push eax
lea ecx, [ebp - 0x94]
call fcn.10003130
mov byte [ebp - 4], 0x29
xor ecx, ecx
mov dword [ebp - 0x1c], 0xb4b2b7b0
mov dword [ebp - 0x18], 0xb8bbb0be
mov word [ebp - 0x14], 0xba
mov byte [ebp - 0x12], 1
nop
lea eax, [ecx - 0x7d]
xor byte [ebp + ecx - 0x1c], al
inc ecx
cmp ecx, 9
jb 0x10004e20
lea eax, [ebp - 0x1c]
mov byte [ebp - 0x12], 0
push eax
lea ecx, [ebp - 0x7c]
call fcn.10003130
mov byte [ebp - 4], 0x2a
xor ecx, ecx
mov dword [ebp - 0x1c], 0xb4bdbcb2
mov dword [ebp - 0x18], 0xbabeb1b3
mov dword [ebp - 0x14], 0x100bfba
lea eax, [ecx - 0x7d]
xor byte [ebp + ecx - 0x1c], al
inc ecx
cmp ecx, 0xa
jb 0x10004e58
lea eax, [ebp - 0x1c]
mov byte [ebp - 0x11], 0
push eax
lea ecx, [ebp - 0x64]
call fcn.10003130
mov byte [ebp - 4], 0x2b
xor ecx, ecx
mov dword [ebp - 0x1c], 0xb6b2b5b0
mov dword [ebp - 0x18], 0xbdb8b9b7
mov dword [ebp - 0x14], 0x100bcb8
lea eax, [ecx - 0x7d]
xor byte [ebp + ecx - 0x1c], al
inc ecx
cmp ecx, 0xa
jb 0x10004e90
lea eax, [ebp - 0x1c]
mov byte [ebp - 0x11], 0
push eax
lea ecx, [ebp - 0x4c]
call fcn.10003130
lea edi, [ebp - 0x454]
mov byte [ebp - 4], 0x2c
lea ecx, [ebp - 0x34]
mov dword [ebp - 0x468], 0
sub ecx, edi
mov dword [ebp - 0x464], 0
mov eax, 0x2aaaaaab
mov dword [ebp - 0x460], 0
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x10004faf
cmp eax, 0xaaaaaaa
ja 0x1000515c
lea esi, [eax + eax*2]
shl esi, 3
mov dword [ebp - 0x45c], esi
cmp esi, 0x1000
jb 0x10004f37
lea eax, [esi + 0x23]
cmp eax, esi
jbe 0x10005161
push eax
call fcn.1004c3d4
add esp, 4
test eax, eax
je 0x100050f6
lea esi, [eax + 0x23]
and esi, 0xffffffe0
mov dword [esi - 4], eax
jmp 0x10004f4a
test esi, esi
je 0x10004f48
push esi
call fcn.1004c3d4
add esp, 4
mov esi, eax
jmp 0x10004f4a
xor esi, esi
mov eax, dword [ebp - 0x45c]
add eax, esi
mov dword [ebp - 0x468], esi
mov dword [ebp - 0x460], eax
lea eax, [ebp - 0x468]
mov dword [ebp - 0x464], esi
mov dword [ebp - 0x46c], eax
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x34]
mov byte [ebp - 4], 0x2e
cmp edi, eax
je 0x10004f9c
push edi
mov ecx, esi
call fcn.100039b0
add esi, 0x18
lea eax, [ebp - 0x34]
add edi, 0x18
mov dword [ebp - 0x18], esi
cmp edi, eax
jne 0x10004f84
push ecx
mov edx, esi
mov ecx, esi
call fcn.10010100
add esp, 4
mov dword [ebp - 0x464], esi
push 0x10002960
push 0x2c
push 0x18
lea eax, [ebp - 0x454]
mov byte [ebp - 4], 0x30
push eax
call fcn.1004c74f
mov eax, dword [ebp - 0x468]
mov ecx, dword [ebp - 0x464]
mov dword [ebp - 0x45c], eax
mov dword [ebp - 0x46c], ecx
cmp eax, ecx
je 0x100050be
nop dword [eax + eax]
push eax
lea ecx, [ebp - 0x34]
call fcn.100039b0
mov eax, dword [ebp - 0x20]
lea ecx, [ebp - 0x34]
mov edi, dword [ebp - 0x34]
lea edx, [ebp + 8]
mov esi, dword [ebp + 0x18]
cmp eax, 0xf
cmova ecx, edi
cmp dword [ebp + 0x1c], 0xf
cmova edx, dword [ebp + 8]
cmp esi, dword [ebp - 0x24]
jne 0x10005077
sub esi, 4
jb 0x10005031
mov eax, dword [edx]
cmp eax, dword [ecx]
jne 0x10005036
add edx, 4
add ecx, 4
sub esi, 4
jae 0x10005020
cmp esi, 0xfffffffc
je 0x1000506a
mov al, byte [edx]
cmp al, byte [ecx]
jne 0x10005063
cmp esi, 0xfffffffd
je 0x1000506a
mov al, byte [edx + 1]
cmp al, byte [ecx + 1]
jne 0x10005063
cmp esi, 0xfffffffe
je 0x1000506a
mov al, byte [edx + 2]
cmp al, byte [ecx + 2]
jne 0x10005063
cmp esi, 0xffffffff
je 0x1000506a
mov al, byte [edx + 3]
cmp al, byte [ecx + 3]
je 0x1000506a
sbb eax, eax
or eax, 1
jmp 0x1000506c
xor eax, eax
test eax, eax
mov eax, dword [ebp - 0x20]
je 0x100050fc
cmp eax, 0xf
jbe 0x100050a3
lea ecx, [eax + 1]
mov eax, edi
cmp ecx, 0x1000
jb 0x10005099
mov edi, dword [eax - 4]
add ecx, 0x23
sub eax, edi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100050f6
push ecx
push edi
call fcn.1004c71e
add esp, 8
mov eax, dword [ebp - 0x45c]
add eax, 0x18
mov dword [ebp - 0x45c], eax
cmp eax, dword [ebp - 0x46c]
jne 0x10004ff0
mov byte [ebp - 0x455], 0
lea ecx, [ebp - 0x468]
call fcn.1000fbc0
mov ecx, dword [ebp + 0x1c]
cmp ecx, 0xf
jbe 0x1000513b
mov edx, dword [ebp + 8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10005131
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10005131
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
cmp eax, 0xf
jbe 0x10005128
lea ecx, [eax + 1]
mov eax, edi
cmp ecx, 0x1000
jb 0x1000511e
mov edi, dword [eax - 4]
add ecx, 0x23
sub eax, edi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100050f6
push ecx
push edi
call fcn.1004c71e
add esp, 8
mov byte [ebp - 0x455], 1
jmp 0x100050c5
push ecx
push edx
call fcn.1004c71e
add esp, 8
mov al, byte [ebp - 0x455]
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.1004c2e6
mov esp, ebp
pop ebp
ret
call fcn.10003db0
call fcn.10001350
int3