Function at 0x418030
Capabilities:
Authenticate hmac
Encode data using xor
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x438
mov esi, esp
mov eax, dword [ebp + 0x14]
mov eax, dword [ebp + 0x10]
mov eax, dword [ebp + 0xc]
mov eax, dword [ebp + 8]
mov dword [esi + 0x38c], 0x441d74
mov byte [esi + 6], 0
mov al, byte [esi + 0x8c]
mov byte [esi + 0x90], al
mov byte [esi + 0x40], 0x33
mov byte [esi + 0x41], 0x41
mov byte [esi + 0x42], 0x3f
mov byte [esi + 0x43], 0x43
mov byte [esi + 0x44], 0xc9
mov byte [esi + 0x45], 0x5d
mov byte [esi + 0x46], 0x10
mov byte [esi + 0x47], 0x5f
mov byte [esi + 0x48], 0x68
mov byte [esi + 0x49], 0x59
mov byte [esi + 0x4a], 0x24
mov byte [esi + 0x4b], 0x5b
mov byte [esi + 0x4c], 0x38
mov byte [esi + 0x4d], 0x55
mov byte [esi + 0x4e], 0x54
mov byte [esi + 0x4f], 0x57
mov dword [esi + 0xc], 0
mov eax, dword [esi + 0xc]
cmp eax, 0x10
jae 0x4180fe
jmp 0x4180b8
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 0xc]
movzx ecx, byte [esi + ecx + 0x40]
mov edx, eax
add edx, 0xf9f1524b
lea eax, [eax + ecx - 0x60eadb5]
and edx, ecx
add edx, edx
sub eax, edx
mov dword [esi + 0x390], eax
mov eax, dword [esi + 0x390]
add al, 0xf3
mov ecx, dword [esi + 0xc]
mov byte [esi + ecx + 0x40], al
mov eax, dword [esi + 0xc]
inc eax
mov dword [esi + 0xc], eax
mov eax, dword [esi + 0xc]
cmp eax, 0x10
jb 0x4180b8
jmp 0x4180fe
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 8]
sub esp, 0xc
lea edx, [esi + 0x40]
mov dword [esp + 8], edx
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.00415190
add esp, 0xc
mov cl, byte [esi + 6]
or cl, al
mov byte [esi + 6], cl
mov al, byte [esi + 0x88]
mov byte [esi + 0x94], al
mov byte [esi + 0xb0], 0xc3
mov byte [esi + 0xb1], 0x61
mov byte [esi + 0xb2], 0xc7
mov byte [esi + 0xb3], 0x63
mov byte [esi + 0xb4], 0xf6
mov byte [esi + 0xb5], 0x65
mov byte [esi + 0xb6], 0xf2
mov byte [esi + 0xb7], 0x67
mov byte [esi + 0xb8], 0xb1
mov byte [esi + 0xb9], 0x69
mov byte [esi + 0xba], 0x84
mov byte [esi + 0xbb], 0x6b
mov byte [esi + 0xbc], 0xc8
mov byte [esi + 0xbd], 0x6d
mov byte [esi + 0xbe], 0xcc
mov byte [esi + 0xbf], 0x6f
mov byte [esi + 0xc0], 0x50
mov byte [esi + 0xc1], 0x51
mov word [esi + 0xc6], 0
mov dword [esi + 0xc2], 0
mov dword [esi + 0x10], 0
mov eax, dword [esi + 0x10]
cmp eax, 0x18
jae 0x418222
jmp 0x4181d3
mov edi, dword [esi + 0x10]
mov eax, dword [esi + 0x10]
movzx ecx, byte [esi + eax + 0xb0]
mov eax, edi
add eax, 0x90
and eax, ecx
mov edx, 0x989c8b6f
sub edx, edi
or edx, ecx
not edx
add edx, ecx
sub edx, eax
mov dword [esi + 0x394], edx
mov eax, dword [esi + 0x394]
add al, 0x10
mov ecx, dword [esi + 0x10]
mov byte [esi + ecx + 0xb0], al
mov eax, dword [esi + 0x10]
inc eax
mov dword [esi + 0x10], eax
mov eax, dword [esi + 0x10]
cmp eax, 0x18
jb 0x4181d3
jmp 0x418222
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 8]
sub esp, 0xc
lea edx, [esi + 0xb0]
mov dword [esp + 8], edx
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.00415190
add esp, 0xc
movzx ecx, al
movzx eax, byte [esi + 6]
not eax
not ecx
and eax, ecx
not al
mov byte [esi + 6], al
mov al, byte [esi + 0x84]
mov byte [esi + 0x98], al
mov byte [esi + 0x110], 0xe6
mov byte [esi + 0x111], 0x99
mov byte [esi + 0x112], 0xed
mov byte [esi + 0x113], 0x9b
mov byte [esi + 0x114], 0xe6
mov byte [esi + 0x115], 0x95
mov byte [esi + 0x116], 0xe3
mov byte [esi + 0x117], 0x97
mov byte [esi + 0x118], 0xe8
mov byte [esi + 0x119], 0x91
mov byte [esi + 0x11a], 0xeb
mov byte [esi + 0x11b], 0x93
mov byte [esi + 0x11c], 0xdf
mov byte [esi + 0x11d], 0xad
mov byte [esi + 0x11e], 0x22
mov byte [esi + 0x11f], 0xaf
mov byte [esi + 0x120], 0xdf
mov byte [esi + 0x121], 0xa9
mov byte [esi + 0x122], 0xd8
mov byte [esi + 0x123], 0xab
mov byte [esi + 0x124], 0x2d
mov byte [esi + 0x125], 0xa5
mov byte [esi + 0x126], 0x90
mov byte [esi + 0x127], 0xa7
mov byte [esi + 0x128], 0xd3
mov byte [esi + 0x129], 0xa1
mov byte [esi + 0x12a], 0xd3
mov byte [esi + 0x12b], 0xa3
mov byte [esi + 0x12c], 0xc8
mov byte [esi + 0x12d], 0xbd
mov byte [esi + 0x12e], 0xc7
mov byte [esi + 0x12f], 0xbf
mov byte [esi + 0x130], 0x34
mov byte [esi + 0x131], 0xb9
mov byte [esi + 0x132], 0xc7
mov byte [esi + 0x133], 0xbb
mov byte [esi + 0x134], 0xb4
mov byte [esi + 0x135], 0xb5
mov word [esi + 0x13a], 0
mov dword [esi + 0x136], 0
mov dword [esi + 0x14], 0
mov eax, dword [esi + 0x14]
cmp eax, 0x2c
jae 0x4183ee
jmp 0x418390
mov edi, dword [esi + 0x14]
mov eax, dword [esi + 0x14]
movzx ecx, byte [esi + eax + 0x110]
mov eax, edi
add eax, 0x94
and eax, ecx
mov edx, 0x3896e96b
sub edx, edi
or edx, ecx
not edx
add edx, ecx
sub edx, eax
mov dword [esi + 0x398], edx
mov ecx, dword [esi + 0x398]
mov eax, ecx
or eax, 0xf3
and ecx, 0xf3
add eax, ecx
inc al
mov ecx, dword [esi + 0x14]
mov byte [esi + ecx + 0x110], al
mov eax, dword [esi + 0x14]
inc eax
mov dword [esi + 0x14], eax
mov eax, dword [esi + 0x14]
cmp eax, 0x2c
jb 0x418390
jmp 0x4183ee
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 8]
sub esp, 0xc
lea edx, [esi + 0x110]
mov dword [esp + 8], edx
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.00415190
add esp, 0xc
mov cl, byte [esi + 6]
or cl, al
mov byte [esi + 6], cl
mov al, byte [esi + 0x80]
mov byte [esi + 0x9c], al
mov byte [esi + 0x140], 0x3b
mov byte [esi + 0x141], 0x99
mov byte [esi + 0x142], 0x2d
mov byte [esi + 0x143], 0x9b
mov byte [esi + 0x144], 0x53
mov byte [esi + 0x145], 0xe5
mov byte [esi + 0x146], 0x4d
mov byte [esi + 0x147], 0xe7
mov byte [esi + 0x148], 0x49
mov byte [esi + 0x149], 0xe1
mov byte [esi + 0x14a], 0x4f
mov byte [esi + 0x14b], 0xe3
mov byte [esi + 0x14c], 0x5f
mov byte [esi + 0x14d], 0xed
mov byte [esi + 0x14e], 0x98
mov byte [esi + 0x14f], 0xef
mov byte [esi + 0x150], 0x5b
mov byte [esi + 0x151], 0xe9
mov byte [esi + 0x152], 0x5b
mov byte [esi + 0x153], 0xeb
mov byte [esi + 0x154], 0x40
mov byte [esi + 0x155], 0xf5
mov byte [esi + 0x156], 0x5f
mov byte [esi + 0x157], 0xf7
mov byte [esi + 0x158], 0x4c
mov byte [esi + 0x159], 0xf1
mov byte [esi + 0x15a], 0x5f
mov byte [esi + 0x15b], 0xf3
mov byte [esi + 0x15c], 0xfc
mov byte [esi + 0x15d], 0xfd
mov dword [esi + 0x15e], 0
mov dword [esi + 0x18], 0
mov eax, dword [esi + 0x18]
cmp eax, 0x22
jae 0x41855a
jmp 0x418511
mov eax, dword [esi + 0x18]
mov ecx, dword [esi + 0x18]
movzx ecx, byte [esi + ecx + 0x140]
mov edx, eax
add edx, 0x3c
add eax, ecx
and edx, ecx
add edx, edx
sub eax, edx
add eax, 0x7935233c
mov dword [esi + 0x39c], eax
mov eax, dword [esi + 0x39c]
add al, 0x5c
mov ecx, dword [esi + 0x18]
mov byte [esi + ecx + 0x140], al
mov eax, dword [esi + 0x18]
inc eax
mov dword [esi + 0x18], eax
mov eax, dword [esi + 0x18]
cmp eax, 0x22
jb 0x418511
jmp 0x41855a
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 8]
sub esp, 0xc
lea edx, [esi + 0x140]
mov dword [esp + 8], edx
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.00415190
add esp, 0xc
mov cl, byte [esi + 6]
or cl, al
mov byte [esi + 6], cl
mov al, byte [esi + 0x7c]
mov byte [esi + 0xa0], al
mov byte [esi + 0xc8], 0x72
mov byte [esi + 0xc9], 0xc5
mov byte [esi + 0xca], 0x75
mov byte [esi + 0xcb], 0xc3
mov byte [esi + 0xcc], 0x6b
mov byte [esi + 0xcd], 0xc1
mov byte [esi + 0xce], 0x77
mov byte [esi + 0xcf], 0xcf
mov byte [esi + 0xd0], 0x7c
mov byte [esi + 0xd1], 0xcd
mov byte [esi + 0xd2], 0x71
mov byte [esi + 0xd3], 0xcb
mov byte [esi + 0xd4], 0x38
mov byte [esi + 0xd5], 0xc9
mov byte [esi + 0xd6], 0x7e
mov byte [esi + 0xd7], 0xd7
mov byte [esi + 0xd8], 0x6b
mov byte [esi + 0xd9], 0xd5
mov byte [esi + 0xda], 0x65
mov byte [esi + 0xdb], 0xd3
mov byte [esi + 0xdc], 0x60
mov byte [esi + 0xdd], 0xd1
mov byte [esi + 0xde], 0xd0
mov byte [esi + 0xdf], 0xdf
mov byte [esi + 0xe4], 0
mov dword [esi + 0xe0], 0
mov dword [esi + 0x1c], 0
mov eax, dword [esi + 0x1c]
cmp eax, 0x1d
jae 0x4186ae
jmp 0x418657
mov eax, dword [esi + 0x1c]
mov ecx, dword [esi + 0x1c]
movzx ecx, byte [esi + ecx + 0xc8]
mov edx, eax
add edx, 0xbc635721
lea eax, [eax + ecx - 0x439ca8df]
and edx, ecx
add edx, edx
sub eax, edx
mov dword [esi + 0x3a0], eax
mov eax, dword [esi + 0x3a0]
mov ecx, eax
xor ecx, 0x18
and eax, 0x18
lea eax, [ecx + eax*2]
inc al
mov ecx, dword [esi + 0x1c]
mov byte [esi + ecx + 0xc8], al
mov eax, dword [esi + 0x1c]
inc eax
mov dword [esi + 0x1c], eax
mov eax, dword [esi + 0x1c]
cmp eax, 0x1d
jb 0x418657
jmp 0x4186ae
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 8]
sub esp, 0xc
lea edx, [esi + 0xc8]
mov dword [esp + 8], edx
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.00415190
add esp, 0xc
movzx eax, al
movzx ecx, byte [esi + 6]
mov edx, eax
not edx
mov edi, ecx
and edi, edx
mov edx, ecx
xor edx, eax
add ecx, edx
sub ecx, edi
setne byte [esi + 6]
mov al, byte [esi + 0x78]
mov byte [esi + 0xa4], al
mov byte [esi + 0x168], 8
mov byte [esi + 0x169], 0x99
mov byte [esi + 0x16a], 0xe
mov byte [esi + 0x16b], 0x9b
mov byte [esi + 0x16c], 0x75
mov byte [esi + 0x16d], 0x95
mov byte [esi + 0x16e], 0x75
mov byte [esi + 0x16f], 0x97
mov byte [esi + 0x170], 0xd
mov byte [esi + 0x171], 0x91
mov byte [esi + 0x172], 1
mov byte [esi + 0x173], 0x93
mov byte [esi + 0x174], 0x5a
mov byte [esi + 0x175], 0x8d
mov byte [esi + 0x176], 0x1d
mov byte [esi + 0x177], 0x8f
mov byte [esi + 0x178], 0x19
mov byte [esi + 0x179], 0x89
mov byte [esi + 0x17a], 0x1e
mov byte [esi + 0x17b], 0x8b
mov byte [esi + 0x17c], 0x1d
mov byte [esi + 0x17d], 0x85
mov byte [esi + 0x17e], 0xa
mov byte [esi + 0x17f], 0x87
mov byte [esi + 0x180], 0x1d
mov byte [esi + 0x181], 0x81
mov byte [esi + 0x182], 0x82
mov byte [esi + 0x183], 0x83
mov dword [esi + 0x187], 0
mov dword [esi + 0x184], 0
mov dword [esi + 0x20], 0
mov eax, dword [esi + 0x20]
cmp eax, 0x23
jae 0x41883b
jmp 0x4187dd
mov edi, dword [esi + 0x20]
mov eax, dword [esi + 0x20]
movzx ecx, byte [esi + eax + 0x168]
mov eax, edi
add eax, 0xc4
and eax, ecx
mov edx, 0x5cd1db3b
sub edx, edi
or edx, ecx
not edx
add edx, ecx
sub edx, eax
mov dword [esi + 0x3a4], edx
mov ecx, dword [esi + 0x3a4]
mov eax, ecx
or eax, 0xa3
and ecx, 0xa3
add eax, ecx
inc al
mov ecx, dword [esi + 0x20]
mov byte [esi + ecx + 0x168], al
mov eax, dword [esi + 0x20]
inc eax
mov dword [esi + 0x20], eax
mov eax, dword [esi + 0x20]
cmp eax, 0x23
jb 0x4187dd
jmp 0x41883b
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 8]
sub esp, 0xc
lea edx, [esi + 0x168]
mov dword [esp + 8], edx
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.00415190
add esp, 0xc
movzx eax, al
movzx ecx, byte [esi + 6]
mov edx, eax
and edx, ecx
not edx
add ecx, eax
add ecx, edx
sub ecx, 0xffffffff
setne byte [esi + 6]
mov eax, dword [ebp + 0x10]
xor ecx, ecx
test eax, eax
sete cl
mov dword [esi + 0x388], ecx
mov eax, dword [esi + 0x38c]
mov ecx, dword [esi + 0x388]
mov eax, dword [eax + ecx*4]
mov dword [esi + 0x1e0], eax
push eax
mov eax, esp
mov dword [esi + 0x1e8], eax
mov dword [eax], 0x441d7c
push eax
mov dword [esi + 0x1d8], esp
push eax
mov eax, esp
mov dword [esi + 0x1f4], eax
mov dword [eax], 0x441d84
push eax
mov dword [esi + 0x1f0], esp
push eax
mov eax, esp
mov dword [esi + 0x1ec], eax
mov dword [eax], 0x441be0
push eax
mov eax, esp
mov dword [esi + 0x1dc], eax
mov dword [eax], 0x17
push eax
mov eax, esp
mov dword [esi + 0x1e4], eax
mov dword [eax], 0x441be0
push eax
mov eax, esp
mov dword [esi + 0x1d4], eax
mov dword [eax], 0x18
push eax
mov eax, esp
mov dword [esi + 0x1d0], eax
mov dword [eax], 0x441be0
push eax
mov eax, esp
mov dword [esi + 0x1cc], eax
mov dword [eax], 0x44
push eax
mov eax, esp
mov dword [esi + 0x1fc], eax
mov dword [eax], 0x441d8c
push eax
mov dword [esi + 0x1f8], esp
push eax
mov eax, esp
mov dword [esi + 0x204], eax
mov dword [eax], 0x441d94
push eax
mov dword [esi + 0x200], esp
push eax
mov ecx, esp
mov dword [esi + 0x224], ecx
mov dword [ecx], 0x441d9c
push eax
mov dword [esi + 0x21c], esp
push eax
mov ecx, esp
mov dword [esi + 0x24c], ecx
mov dword [ecx], 0x441da4
push eax
mov dword [esi + 0x244], esp
push eax
mov ecx, esp
mov dword [esi + 0x248], ecx
mov dword [ecx], 0x441be0
push eax
mov ecx, esp
mov dword [esi + 0x240], ecx
mov dword [ecx], 0x1e
push eax
mov ecx, esp
mov dword [ecx], 0x441dac
push eax
mov dword [esi + 0x380], esp
push eax
mov edi, esp
mov dword [esi + 0x37c], edi
mov dword [edi], 0x441db4
push eax
mov dword [esi + 0x378], esp
push eax
mov edi, esp
mov dword [esi + 0x374], edi
mov dword [edi], 0x441dbc
push eax
mov dword [esi + 0x370], esp
push eax
mov edi, esp
mov dword [esi + 0x36c], edi
mov dword [edi], 0x441be0
push eax
mov edi, esp
mov dword [esi + 0x368], edi
mov dword [edi], 0x37
push eax
mov edi, esp
mov dword [esi + 0x364], edi
mov dword [edi], 0x441dc4
push eax
mov dword [esi + 0x360], esp
push eax
mov edi, esp
mov dword [esi + 0x35c], edi
mov dword [edi], 0x441be0
push eax
mov edi, esp
mov dword [esi + 0x358], edi
mov dword [edi], 0x24
push eax
mov edi, esp
mov dword [esi + 0x354], edi
mov dword [edi], 0x441be0
push eax
mov edi, esp
mov dword [esi + 0x350], edi
mov dword [edi], 0x2a
push eax
mov edi, esp
mov dword [esi + 0x34c], edi
mov dword [edi], 0x441dcc
push eax
mov dword [esi + 0x348], esp
push eax
mov edi, esp
mov dword [esi + 0x344], edi
mov dword [edi], 0x441dd4
push eax
mov dword [esi + 0x340], esp
push eax
mov edi, esp
mov dword [esi + 0x33c], edi
mov dword [edi], 0x441ddc
push eax
mov dword [esi + 0x338], esp
push eax
mov edi, esp
mov dword [esi + 0x334], edi
mov dword [edi], 0x441be0
push eax
mov edi, esp
mov dword [esi + 0x330], edi
mov dword [edi], 0x29
push eax
mov edi, esp
mov dword [esi + 0x32c], edi
mov dword [edi], 0x441be0
push eax
mov edi, esp
mov dword [esi + 0x328], edi
mov dword [edi], 0x2a
push eax
mov edi, esp
mov dword [esi + 0x324], edi
mov dword [edi], 0x441be0
push eax
mov edi, esp
mov dword [esi + 0x320], edi
mov dword [edi], 0x2b
push eax
mov edi, esp
mov dword [esi + 0x31c], edi
mov dword [edi], 0x441be0
push eax
mov edi, esp
mov dword [esi + 0x318], edi
mov dword [edi], 0x2c
push eax
mov edi, esp
mov dword [esi + 0x314], edi
mov dword [edi], 0x441be0
push eax
mov edi, esp
mov dword [esi + 0x310], edi
mov dword [edi], 0x2d
push eax
mov edi, esp
mov dword [esi + 0x30c], edi
mov dword [edi], 0x441de4
push eax
mov dword [esi + 0x308], esp
push eax
mov edi, esp
mov dword [esi + 0x304], edi
mov dword [edi], 0x441dec
push eax
mov dword [esi + 0x300], esp
push eax
mov edi, esp
mov dword [esi + 0x2fc], edi
mov dword [edi], 0x441df4
push eax
mov dword [esi + 0x2f8], esp
push eax
mov edi, esp
mov dword [esi + 0x2f4], edi
mov dword [edi], 0x441be0
push eax
mov edi, esp
mov dword [esi + 0x2ec], edi
mov dword [edi], 0x31
push eax
mov edi, esp
mov dword [esi + 0x2d4], edi
mov dword [edi], 0x441dfc
push eax
mov dword [esi + 0x2b4], esp
push eax
mov edi, esp
mov dword [esi + 0x2a4], edi
mov dword [edi], 0x441e04
push eax
mov dword [esi + 0x2a0], esp
push eax
mov edi, esp
mov dword [esi + 0x29c], edi
mov dword [edi], 0x441be0
push eax
mov edi, esp
mov dword [esi + 0x298], edi
mov dword [edi], 0x34
push eax
mov edi, esp
mov dword [esi + 0x294], edi
mov dword [edi], 0x441be0
push eax
mov edi, esp
mov dword [esi + 0x290], edi
mov dword [edi], 0x35
push eax
mov edi, esp
mov dword [esi + 0x28c], edi
mov dword [edi], 0x441be0
push eax
mov edi, esp
mov dword [esi + 0x288], edi
mov dword [edi], 0x36
push eax
mov edi, esp
mov dword [esi + 0x284], edi
mov dword [edi], 0x441be0
push eax
mov edi, esp
mov dword [esi + 0x27c], edi
mov dword [edi], 0x1e
push eax
mov edi, esp
mov dword [esi + 0x280], edi
mov dword [edi], 0x441be0
push eax
mov edi, esp
mov dword [esi + 0x278], edi
mov dword [edi], 0x38
push eax
mov edi, esp
mov dword [esi + 0x274], edi
mov dword [edi], 0x441be0
push eax
mov edi, esp
mov dword [esi + 0x264], edi
mov dword [edi], 0x39
push eax
mov edi, esp
mov dword [esi + 0x270], edi
mov dword [edi], 0x441e0c
push eax
mov dword [esi + 0x268], esp
push eax
mov edi, esp
mov dword [esi + 0x26c], edi
mov dword [edi], 0x441be0
push eax
mov edi, esp
mov dword [esi + 0x260], edi
mov dword [edi], 0x3b
push eax
mov edi, esp
mov dword [esi + 0x25c], edi
mov dword [edi], 0x441be0
push eax
mov edi, esp
mov dword [esi + 0x258], edi
mov dword [edi], 0x3c
push eax
mov edi, esp
mov dword [esi + 0x2f0], edi
mov dword [edi], 0x441be0
push eax
mov edi, esp
mov dword [esi + 0x2dc], edi
mov dword [edi], 0x3d
push eax
mov edi, esp
mov dword [esi + 0x2e4], edi
mov dword [edi], 0x441be0
push eax
mov edi, esp
mov dword [esi + 0x2c0], edi
mov dword [edi], 0x3e
push eax
mov edi, esp
mov dword [esi + 0x2d8], edi
mov dword [edi], 0x441be0
push eax
mov edi, esp
mov dword [esi + 0x2b0], edi
mov dword [edi], 0x3f
push eax
mov edi, esp
mov dword [esi + 0x2bc], edi
mov dword [edi], 0x441e14
push eax
mov dword [esi + 0x2a8], esp
push eax
mov edi, esp
mov dword [esi + 0x2e0], edi
mov dword [edi], 0x441e1c
push eax
mov dword [esi + 0x2c4], esp
push eax
mov edi, esp
mov dword [esi + 0x2d0], edi
mov dword [edi], 0x441e24
push eax
mov dword [esi + 0x2b8], esp
push eax
mov edi, esp
mov dword [esi + 0x2cc], edi
mov dword [edi], 0x441be0
push eax
mov edi, esp
mov dword [esi + 0x2ac], edi
mov dword [edi], 0x43
push eax
mov edi, esp
mov dword [esi + 0x2e8], edi
mov dword [edi], 0x441be0
push eax
mov edi, esp
mov dword [esi + 0x2c8], edi
mov dword [edi], 0x44
push eax
mov edx, esp
mov dword [esi + 0x234], edx
mov dword [edx], 0x441e2c
push eax
mov dword [esi + 0x230], esp
push eax
mov edx, esp
mov dword [esi + 0x23c], edx
mov dword [edx], 0x441e34
push eax
mov dword [esi + 0x238], esp
push eax
mov edi, esp
mov dword [edi], 0x441be0
push eax
mov ebx, esp
mov dword [ebx], 0x15
push eax
mov edx, esp
mov dword [esi + 0x22c], edx
mov dword [edx], 0x441be0
push eax
mov edx, esp
mov dword [esi + 0x228], edx
mov dword [edx], 0x1f
push eax
mov edx, esp
mov dword [esi + 0x220], edx
mov dword [edx], 0x441be0
push eax
mov edx, esp
mov dword [esi + 0x218], edx
mov dword [edx], 0x27
push eax
mov edx, esp
mov dword [esi + 0x214], edx
mov dword [edx], 0x441be0
push eax
mov edx, esp
mov dword [esi + 0x20c], edx
mov dword [edx], 0x32
push eax
mov edx, esp
mov dword [esi + 0x254], edx
mov dword [edx], 0x441be0
push eax
mov edx, esp
mov dword [esi + 0x250], edx
mov dword [edx], 0x40
push eax
mov edx, esp
mov dword [edx], 0x441be0
push eax
mov eax, esp
mov dword [esi + 0x208], eax
mov dword [eax], 0x46
jmp dword [esi + 0x1e0]